如何在linux中使用boost
how to use boost in linux
我试图使用共享指针类(?)从boost。我已经下载了boost并将其提取到我的源文件夹(src)中的子文件夹(boost)。然后我添加了一行:
#include "boost/shared_ptr.hpp"
当我尝试编译时,我得到一个错误:
错误:boost/smart_ptr/shared_ptr.hpp: No such file or directory
我必须添加什么才能使程序编译?
我在一台没有root权限的科学linux机器上工作
对于g++
,您需要像g++ -I./boost ...
一样将目录添加为编译选项,或者基本上将-I
添加为命令行选项,直接在安装boost库的相对或绝对路径后面不加空格。还请记住,为了将来的参考,boost的一些元素,如线程库也需要链接一些库,并且您还必须在编译时使用-L
选项包括那些文件路径…这不是boost::shared_ptr
的情况,但只是给你一个提示。
假设您已经将boost安装到主目录的某个子目录中,您需要执行以下操作之一来指定编译器应该在哪里查找boost头文件:
- 在编译器命令行(GCC文档)中添加-I标志
- 设置
CPLUS_INCLUDE_PATH
环境变量(GCC文档)
可以添加gcc -I选项。文档。
相关文章:
- 如何在 Linux for Windows 上通过 MinGW 构建静态 ICU 的 Boost
- 我在使用 boost::serialization 时遇到了一个问题,我的代码在 Linux 中运行良好,但在 Wind
- Linux Mint 19 上的 CMake 3.11 无法找到静态的 Boost 库
- 操作系统 (Linux) 在使用 boost::asio::generic::raw_protocol::socket
- 如何在 Oracle Linux 上的 Eclipse 中编译和链接 boost 库
- 使用 boost::序列化序列化 std::vector of unique_ptr 在 Linux 上失败
- cmake not finding boost linux
- 无法在支持 bz2 的 Linux 上构建 boost
- 如何链接到与 Linux 中不同版本的 boost 链接的共享库
- boost/asio async_read() TCP Server - 了解 Linux 上的 io_service.
- 在Linux上用于Windows的Linux上的Boost Fiber库
- Visual Studio 2017远程构建Linux具有Boost
- 可以在linux程序中使用msvc在windows上构建的boost lib吗
- 在Windows和Linux上使用Boost/ASIO在MingW中使用Boost/ASIO进行故障
- 在 Linux 上编译 boost asio 时出现链接错误
- Linux上多核计算的低性能(openMP、boost::thread等)
- 用C 11 Boost实施的无法处于正常(Win/Linux)的事物列表
- Linux 拒绝使用 boost asio 的套接字绑定权限
- 在linux下使用boost::thread创建一个boost::asio工作线程
- 如何使用Boost.Linux上的文件系统