我的项目目录如下所示:
/project
Makefile
main
/src
main.cpp
foo.cpp
foo.h
bar.cpp
bar.h
/obj
main.o
foo.o
bar.o
我希望makefile可以将.cpp
文件/src
夹中的所有文件编译为文件夹.o
中的/obj
文件,然后将所有.o
文件链接/obj
到顶级文件夹中的输出二进制文件中/project
。
我几乎没有使用Makefile的经验,也不确定要搜索什么来完成此操作。
另外,这是执行此操作的“好方法”,还是我要尝试执行的更标准的方法?
gnu.org/software/make/manual/make.html,例如:gnu.org/software/make/manual/make.html#Simple-Makefile
—
Anycorn 2010年
@aaa:我猜想OP需要一个不需要显式列出每个源文件的解决方案。
—
卡斯卡贝尔
我不想指定我拥有的每个源文件,并且我曾经尝试阅读过该手册,但是我发现它杂乱无章且难以理解。我从一个实际的示例中学到了很多东西,该示例可以完成我所期望的并且得到了很好的解释,而不是枯燥的技术手册。
—
奥斯丁·海德
好的。但是make文档是很好的例子,而且很好(没有尝试使用技术手册)。您正在寻找模式规则:gnu.org/software/make/manual/make.html#Pattern-Rules
—
Anycorn 2010年
看起来有点像我想要的。但是,恕我直言,make手册有些枯燥,因为它似乎更针对于make的中级水平的开发人员,除此之外,它非常庞大且深入。也许太多了。
—
奥斯丁·海德