8

我正在开发一个 c++ 项目,我们最近需要在其中包含一小部分 boost。boost 部分真的很小(Boost::Python),因此,使用 bjam 构建一切看起来有点过头了(此外,从事该项目的每个人都对 make 感到满意,并且没有 jam 知识)。

我已经做了很多测试,但是我找不到一种方法来在我的 makefile 中包含前面提到的库并使构建成功。

非常感谢您的所有帮助。:)

4

4 回答 4

4

您可以使用 Boost 的bcp 实用程序仅提取您需要的 Boost 子集。这将最大限度地减少您的构建时间和大小。

不过,这并不能回答你的问题。您可能需要考虑单独构建 Boost.Python 库并将它们直接检查到您的源代码控制系统中。然后没有人需要建造它们。

于 2010-01-05T01:43:49.487 回答
2

我遇到了同样的问题,并在本教程中找到了解决方案。您 1) 需要使用 gcc 选项将源代码编译为目标文件-fPIC,以及 2) 使用 gcc 选项将此对象编译为库-shared。当然,您还必须链接到 Boost.Python 库(通常-lboost_python,但是对于我的 debian 系统,例如-lboost_python-mt-py25,我还必须添加-I/usr/include/pythyon25)。在我的 makefile 中,我最终在一个命令中完成了这两个步骤。另见第 13 本演示文稿

于 2010-01-13T10:32:37.267 回答
1

如果您对 bjam 不满意,您可能需要考虑使用Boost.Cmake
或者,您至少应该能够比使用 bjam 文件更轻松地看到他们在做什么。

于 2010-01-05T01:26:34.090 回答
1

从 makefile 运行 bjam,仅用于构建该部分

于 2010-01-05T01:33:01.193 回答