我是一个提升C++库的新手。我想知道Boost bjam比GNU make有什么优势吗?如果我使用make来利用Boost.Python库构建C++代码,会有什么缺点呢?
发布于 2009-05-17 19:21:02
就构建boost本身而言,bjam是目前为止的首选。只需遵循自述文件并构建命令行即可。你可能(应该)在每个boost版本中只需要做一次。
但是,没有必要使用boost to boost的构建系统来捆绑您自己的项目。
使用gmake构建使用Boost.Python的C++代码没有特别的缺点,好处是有很多使用gmake的例子。
发布于 2009-05-17 04:42:10
如果你打算使用其他的Boost库,那么使用bjam可能是有意义的,但是,从简单的角度来看,对于一个复杂的项目来说,make是非常复杂的,这就是为什么要开发ant。
Bjam扩展了最初试图取代make的其他项目。
但是,在缺点方面,make在每个unix操作系统上都可以找到,而bjam不是,但是,如果你必须在你的项目中使用Boost库,那么你可以确保它被包括在内。
对于您的项目,我认为bjam可能是最好的选择,但如果您正在编写一个其他人需要使用ANSI C++编译的可移植项目,那么我建议您也支持GNU Make。
发布于 2014-06-13 00:11:59
我已经使用Make和BJam构建了团队共享构建框架。我的最终观点是,一旦我学会了基本设置,bjam实现就更容易维护。团队成员一开始可能会有抵触情绪,但一旦他们使用了它,并看到它比Make (我的意见)简单得多,他们就会被赢得。一些人将继续抵制。您可以设置双重构建系统,但这是额外的工作。
当我被迫使用Make时,我会使用中心规则集创建非递归makefile解决方案。BJam内置了所有这些功能。
https://stackoverflow.com/questions/873686
复制相似问题