什么是 Boost Jam? Jam 值得迁移到吗?
我知道 jam 是由 perforce 构建的构建系统,但是我不确定 boost jam 和常规 jam 有何不同。
我也希望 SO 社区中有人使用过它,也许可以强调一些差异和/或好处。
最佳答案
我使用 Boost Jam 进行跨平台 C++ 开发。我选择它是因为
- 我希望我的代码能够在 Boost 构建的任何地方构建,
- 它使用相对简单的声明性语言来指定如何构建目标,并且
- 它可以在一次调用中构建所有不同风格的二进制文件(例如调试与发布、32 位与 64 位、msvc 与 gcc),并且构建中与风格相关的异常绝对最少声明。
您可以使用特定于 flavor 的设置来细化通用规则,而不是为每种 flavor 排列编写单独的规则。该语法并不完全是我所选择的,但并不难习惯。
本文将 Boost Jam 与 CMake、SCons 和 Eclipse CDT 进行了比较:http://syrcose.ispras.ru/2009/files/04_paper.pdf
我的理解是,Boost Jam 是由 Boost 社区维护的 Perforce Jam 的一个分支,并且 Perforce Jam 不再被积极维护(release notes 的最后一次更新是在 2003 年 4 月)。
当然,如果您不关心跨平台开发,还有更简单的方法可以选择,正如其他人在这里提到的那样。就我个人而言,我一直想重新审视 Eclipse CDT; 5 年前它似乎无法使用,但我听说它已经取得了很大的进步。
关于migration - 什么是 Boost Jam? Jam 值得迁移到吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/512202/