c++ - 如何在 linux 中使用 boost

标签 c++ linux boost

我正在尝试使用来自 boost 的共享指针类(?)。我下载了 boost 并将其解压缩到我的源文件夹 (src) 中的子文件夹 (boost)。然后我添加了一行:

#include "boost/shared_ptr.hpp"

当我尝试编译时,出现错误:

error: boost/smart_ptr/shared_ptr.hpp: No such file or directory

我必须添加什么才能编译程序?

我在没有 root 权限的科学 linux 机器上工作

最佳答案

您需要使用 g++,将目录添加为编译选项,例如 g++ -I./boost ... 或者基本上添加为命令行选项-I 直接跟在您安装 boost 库的相对或绝对路径后面,没有空格。还请记住,为了将来引用,boost 的某些元素(如线程库)也需要链接一些库,并且您还必须在编译时使用 -L 包含这些文件路径> 选项 ... boost::shared_ptr 不是这种情况,只是提醒您一下。

关于c++ - 如何在 linux 中使用 boost,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6913053/

相关文章:

c++ - boost::asio 数据包顺序和连续性

c++ - 如果我只给它一个指向我的对象的指针,std::vector 会占用什么内存?

c++ - g++ 说引用未定义,即使 `nm` 在我的目标文件中列出了符号定义

c++ - 在 Qt 中使用 TCPServer 时浏览器连接重置

linux - Apache 使用 SELinux 在 CentOS 7 上执行 MATLAB 二进制文件

linux - 连接到单独 pty 的进程用于 stdout 和 stderr

c++ - Boost::spirit 在规则中使用结构方法

c++ - Qt Creator 不加载我的自定义小部件插件

linux - 我如何在 CentOS 5 上安装 Net::Arping?

c++ - 将 boost 类型删除类型转换回原始类型给我 boost::bad_any_cast