【发布时间】:2013-01-12 13:00:28
【问题描述】:
我目前正在为我的项目使用手动设计的 Makefile,而我之前从未使用过 Makefile 生成器。请注意,我目前有 70 多个源文件(C++、Python 和 MATLAB 相结合)。 Makefile 主要用于编译 C++ 文件和协议缓冲区(.proto)。我知道我的项目越来越多的文件。他们目前都在一个导演。但我可能需要有多个目录。我担心维护 Makefile 变得越来越难。
我以前经常看到 automake/autoconf,现在越来越多地看到 CMake。有什么选择?他们设计的是大型项目吗?哪个是首选?各有什么优缺点?还有哪些不错的选择?
我确实看到 any good tool for makefile generation? 中没有列出 automake。过时了吗?
【问题讨论】:
-
请告诉我们您需要什么。
-
您的项目有多大,需要多大的便携性?使用
g++ -M生成依赖关系可能非常有用,如果您的项目中没有大量文件,使用手动制作的[或简单的脚本/批处理文件]可能比学习和调试更容易CMake 或 automake 脚本。 -
在任何人能够合理地回答这个问题之前,了解您希望完成什么以及今天的计划 makefile 不能实现什么会有所帮助。您是否尝试针对多个目标进行编译?或者您的构建环境是否足够复杂,以至于现有的 Makefile 无法维护?
-
@MarkGarcia:我刚刚更新了问题。
-
谢谢,做得好。提出您的要求和当前的限制几乎可以缩小您真正需要的答案。