【发布时间】:2012-10-01 01:33:41
【问题描述】:
我是计算机工程专业的学生,我还有另一个 C 程序要实现。 到目前为止,我总是从我以前的项目中创建一个新的 Makefile,每次都需要时间来设置。 有没有我可以使用的强大的 Makefile 画布,我只需要提供包含 main 函数的 c 文件的名称?
我的想法是,对于每个新项目,我创建一个包含 Makefile 的文件夹、一个 bin 文件夹和一个 src 文件夹。然后我会将一些变量编辑到 Makefile(包含 main() 函数的 C 文件),然后 make 会自动构建所有内容,同时考虑到依赖关系。
你知道这样的Makefile是否存在吗?
[通过 Alexandre C. 编辑]:对于仅使用标准库并在标准 unix 操作系统上运行的此类项目,Automake/Autoconf 是多余的。 对于我们需要实现的项目,依赖关系(对于要链接的文件)总是可以从“.h”包含中推导出来的,通常涉及的文件很少。
【问题讨论】:
-
我过去曾提出过各种 Makefile 模板,或多或少的东西(自动依赖生成等)。最好的方法仍然是使用 Gnu Make 的优秀文档来创建自己的。您甚至可以使用
src = $(shell find . -name "*.c")或$(grep -H "main(")之类的东西。这不是很难,而且您感觉自己可以控制自己的环境。 -
@AlexandreC。您能否提供一个脚本或 Makefile 供我自己编写?
-
@Mat:网上有很多(例如here)。我强烈建议您浏览 Gnu Make 的文档。不到一个下午就可以成为 Make 专家,这些知识将对您的职业生涯非常有用。特别是,学习使用内置规则(以便您知道何时删除它们)。