我要输入以下内容:
make fileName.cpp
先编译,然后执行:
./fileName
如果我有一个这样的make文件:
commandToCompileFileName:
g++ -o fileName fileName.cpp
然后我可以做:
make commandToCompileFileName
然后:
./fileName
我希望能够对不同的文件执行此操作,而不必在makefile中为每个文件编写不同的提示。所以可以代替
commandToCompileFileName
在makefile中,它将仅编译我在make之后键入的内容,而可执行文件将被命名为相同的名称,而不是.cpp。
第一段中的page恰好描述了我想要的内容,并且可能回答了我的问题,但是在使用'$ @'和'$ <'之后我还是无法弄清楚。
答案 0 :(得分:1)
您实际上不需要Makefile来执行此操作:make附带了一堆默认规则,其中一个默认规则是根据.cpp
文件创建程序的。
换句话说,只需键入make fileName
,然后感到开心:)
(如果要自定义编译标志,请参见CXXFLAGS
和LDFLAGS
变量)
答案 1 :(得分:0)
我使用以下内容:
run_% : %
@echo "---- running $< ----"
$<
.PHONY : run_%
例如,在执行make run_test
时,它将建立test
目标并运行它。