如何在我的项目中添加boost?

8

我在一个跨平台项目中工作(Windows、Linux、Solaris)。我想在这个项目中使用Boost的shared_ptr。

我该如何安装它,并将其与项目一起分发给客户?

由于我在Linux/Solaris上没有root权限,因此可能需要将Boost的源代码添加到我的源代码中,并一起构建它。

此外,我们的Solaris版本非常旧(2.5.1,1996年5月)。这会对shared_ptr的构建造成任何问题吗?

4个回答

4

只需安装boost头文件即可(您无需编译和安装shared_ptr库,因为它是仅有头文件)。不要忘记检查IDE中的boost包含路径是否设置正确,以便能够找到头文件。

在您的代码文件中,包含此头文件:

#include<boost/shared_ptr.hpp>

并像这样使用:

boost::shared_ptr<int> ptrToInt (new int);

4

不需要包含Boost库的源代码(Boost是一个相当大的库)。只需将Boost包含在你的先决条件中。

如果以二进制形式重新分发项目,则根本不需要包含Boost库。


3
boost::shared_ptr是一个头文件库,只需将必要的头文件添加到您的项目中即可完成。 shared_ptr也是TR1的一部分,这是第一个C++库技术报告,例如包含在更新版本的GCC(>= 4.0.0)中(有关更多信息,请参见此处)。

3
请注意,shared_ptr.hpp 依赖于其他一些头文件。 - Kirill V. Lyadvinsky
1
Boost自带一个名为“bcp”的程序来处理这个问题。它会查找您使用的boost头文件,并递归地遍历它们以构建最小集合。我们在构建脚本中自动执行此操作,效果很好。 - KeithB

3
你不需要安装整个boost库来使用shared_ptr。可以使用bcp工具提取shared_ptr所依赖的部分,这可能比安装整个库更好。请参考bcp文档

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接