具体来说,可以问这个问题:你能用一个主要基于CMAKE的构建系统替换Linux内核构建系统吗?
我知道CMAKE非常适合构建跨平台的包,比如库或应用程序。但我怀疑这对于由少数组件组成的系统并不好,并且您希望分别推进每个组件的开发。换句话说,CMAKE可能不适合构建系统,该系统专注于来自不同组件的系统组合。
要为系统组合创建构建系统,最好使用git-repo工具来管理顶级组合。在顶层,它更多的是将不同哈希的包拉入系统布局。之后,进一步的构建步骤可以使用CMAKE或任何其他构建技术。举个例子,我会想到Legato。
建立系统专家,你有什么看法?
答案 0 :(得分:1)
在相关问题列表中,问题是" which suits linux" two interesting other options - scons and waf的链接。
这两个scons and waf都是构建系统工具的理想选择:它们具备完全成熟的编程语言所拥有的全部功能。这使得他们非常适合编写一个可以编写系统的构建系统,无论如何你可以编写一个代表的程序。它们本身就是一个构建系统,不需要单独的构建系统。比较:autotools,cmake,qmake都生成makefile并需要一个单独的make系统来进行构建。
回到原始海报的问题:如果项目团队擅长Python,那么使用scons或waf但不使用cmake。如果你的团队成员真的擅长cmake处理而不是python,为什么不cmake。