提升bjam与GNU make

时间:2009-05-17 01:17:53

标签: comparison build-automation makefile boost-bjam

我是Boost C ++库的新手。我想知道Boost bjam在GNU make上是否有任何优势?如果我使用make来构建使用Boost.Python库的C ++代码,会有什么缺点?

3 个答案:

答案 0 :(得分:6)

到目前为止,为了提升自身,bjam是最佳选择。只需按照自述文件构建命令行即可。你可能(应该)每次加速释放只需要做一次。

但是,没有必要将自己的项目与使用boost来提升构建系统联系起来。

使用gmake构建使用Boost.Python的C ++代码并没有特别的缺点,而专业人士认为有很多使用gmake的例子。

答案 1 :(得分:2)

如果你打算使用其他Boost库,那么使用bjam可能有意义,但是,从简单的角度来看,make对于复杂的项目来说非常复杂,这就是为什么ant,例如开发的原因

Bjam扩展了其他以尝试替换make而开始的项目。

但是,在缺点方面,make在每个unix操作系统上找到,bjam不是,但是,如果你必须为你的项目使用Boost库,那么你可以确定它已包含在内。

对于你的项目,我认为bjam可能是最好的选择,但如果你正在编写一个其他人需要编译的可移植项目,使用ANSI C ++,那么我建议也支持GNU Make。

答案 2 :(得分:0)

我使用Make和BJam构建了团队共享构建框架。 我最后的意见是,一旦我学会了基本设置,bjam的实现就更容易维护了。团队成员一开始可能会有抵抗力,但是一旦他们使用它并看到它比Make(我的观点)简单得多,它们就会被击败。有些人会继续抗拒。您可以设置双构建系统,但这是额外的努力。

当我被迫使用Make时,我使用中央规则集创建非递归的makefile解决方案。 BJam已经内置了所有这些。

相关问题