我想输入以下内容:
make fileName.cpp
要编译,然后执行:
./fileName
如果我有这样的make文件:
commandToCompileFileName:
g++ -o fileName fileName.cpp
然后我可以这样做:
make commandToCompileFileName
然后:
./fileName
我希望能够使用不同的文件执行此操作,而无需在makefile中为每个文件编写不同的提示。所以有些东西可以代替
commandToCompileFileName
在makefile中,它只会编译make后输入的内容,而可执行文件的名称相同,减去.cpp。
第一段中的这个page正好描述了我想要的东西并且可能回答了我的问题,但在玩'$ @'和'$后我无法理解它
实际上,您不需要Makefile来执行此操作:使用一大堆默认规则,其中一个从.cpp
文件创建程序。
换句话说,只需键入make fileName
,并开心:)
(如果要自定义编译标志,请参阅CXXFLAGS
和LDFLAGS
变量)
我使用以下内容:
run_% : %
@echo "---- running $< ----"
$<
.PHONY : run_%
所以,当你这样做时,例如,make run_test
它建立test
目标并运行它。