mik*_*511 74 build-automation makefile
多年来我一直在使用make和makefiles,虽然这个概念很合理,但实现还是有所不足.
有没有人找到任何好的替代方案,使不会使问题过于复杂?
小智 26
看看SCons.例如,Doom 3和Blender使用它.
Tod*_*lin 25
我有很多朋友发誓CMake进行跨平台开发:
它是用于VTK(以及其他)的构建系统,它是一个具有跨平台Python,Tcl和Java绑定的C++库.我认为这可能是你用这么多功能找到的最简单的东西.
你总是可以尝试标准的autotools.如果您只在Unix上运行并且坚持使用C/C++,那么Automake文件很容易组合在一起.集成更复杂,而autotools远非最简单的系统.
请注意ninja受tup和影响的构建工具(2017年9月v1.8.2)redo。
自版本2.8.8(2012年4月)起,构建文件生成器cmake(例如,用于Unix Makefile,Visual Studio,XCode,Eclipse CDT等)也可以生成ninja构建文件,并且afaik ninja现已成为cmake。
它应该胜过该make工具(更好的依赖跟踪,也可以并行化)。
cmake是已经建立的工具。您以后总是可以选择构建工具,而无需修改配置文件。因此,如果将来开发出更好的构建,而cmake您将获得支持,则可以方便地切换到该构建。
请注意,对于c / c ++,由于通过预处理器包含的头文件(特别是在使用仅头文件的库,例如boost&eigen时)有时会限制编译时间,因此有望被模块建议取代(在技术评论中) c ++ 11或最终在c ++ 1y中)。请查看此演示文稿以获取有关此问题的详细信息。