问题描述
我的 MakeFile 是这样的:(这会创建一个主程序,该程序接受一个文件并生成语法树、TAC 代码等。main.cpp 中使用的类和 parser.y 中定义的类在 classes.cpp 中)
MAIN = main
PARSE = parser
SCAN = scanner
CLASS = classes
compiler: lex.yy.c y.yab.h y.tab.c $(CLASSES).cpp
g++ -std=c++11 -Wno-write-strings -o compiler $(MAIN).cpp
y.tab.c y.tab.h: $(PARSE).y $(CLASSES).cpp
yacc -d $(PARSE).y
lex.yy.c: $(SCAN).l
lex $(SCAN).l
clean:
rm -f lex.yy.* y.tab.* *.tokens *.syntree *.tac *.log compiler
但是当我运行 make 我得到
g++ -o .cpp
g++: Fatal error: no input files
compilation terminated.
<builtin>: recipe for target '.cpp' Failed
make: *** [.cpp] Error 1
我该如何解决这个问题?
解决方法
“error: no input files”表示 src 文件不存在。常见原因是您移动或删除了某些 src 文件。