包括没有 Boost 的 yaml-cpp -

Wac*_*aco 5 yaml-cpp

也许这是一个幼稚的问题 - 但是有没有办法构建/安装 yaml-cpp 以便在构建包含 yaml.h 的项目时不需要 Boost 库头文件?

IE:我有一个项目正在使用 yaml-cpp 结构和解析。在系统上,它将部署在我没有安装 Boost 上(没有库或头文件)。在带有 Boost 的系统上构建上述项目没有问题 - 但是在没有 Boost 标头的系统上构建时它会失败,因为 yaml-cpp 直接包含 Boost 标头。

cmake输出:

/yaml_install_path/include/yaml-cpp/node/ptr.h", line 10: catastrophic error: 
          cannot open source file "boost/shared_ptr.hpp"
  #include <boost/shared_ptr.hpp>
Run Code Online (Sandbox Code Playgroud)

有没有办法绕过在系统上手动安装头文件的问题?我希望解决这个问题,以便 yaml-cpp 可以链接到(和使用)其他项目,而完全不依赖于 Boost。如果可能,我宁愿完全不依赖 Boost。

提前致谢 - 希望有一个干净的解决方案,我只是错过了一些简单的事情。:)

Jes*_*der 4

不,那不可能。然而,yaml-cpp 确实有一个单独的分支,版本 0.3.x,它使用旧的 API,不依赖于 Boost。