首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >C++构建系统-使用什么?

C++构建系统-使用什么?
EN

Stack Overflow用户
提问于 2012-08-18 17:48:04
回答 8查看 77.1K关注 0票数 145

我正在考虑在C++中开始一个新项目-最初只是在我的业余时间-我正在研究可用的构建系统。答案似乎是“很多,而且它们都很糟糕”。

为此,我特别需要的特性是:

  1. C++11支持
  2. 跨平台(以Linux为主要目标,但至少也能在Windows上构建)针对多个模块的
  3. 得体单元测试
  4. 用于分离代码的多个模块
  5. 支持代码生成(使用asn1c或protobuf -尚不是100%确定)

<代码>H111易于维护<代码>H212<代码>G213

现在,我知道我可以使用CMake和Autotools轻松地完成其中的1-4个。可能还包括SCons和Waf以及其他几家公司。问题是,我从来没有想过如何正确地使用它们进行代码生成--即在构建过程首次运行之前不存在的源文件,因此构建系统必须能够转换为可执行代码,但直到构建开始时才真正知道的源文件……(尤其是ASN1C生成了几十个必须能够协同工作的头文件和源文件,实际生成的文件集取决于你的asn文件的内容)还有一个事实是,这些文件都不是特别容易维护的-- CMake和Autotools有自己的大量脚本,你需要管理它们才能工作,而Waf和Scons要求任何使用它们的人都有不错的python知识(我没有)才能使用它们……

那么,对于这样的事情,推荐使用什么构建系统呢?或者我现在只能使用make文件和shell脚本了?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12017580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档