【问题标题】:Boost system 1.69.0 not header only?Boost system 1.69.0 不只是标题?
【发布时间】:2019-01-14 15:38:13
【问题描述】:

自 1.69.0 以来,Boost 系统是一个只有头文件的库。但是,链接到 libboost_filesystem.so.1.69.0 会产生以下链接器错误:

ld: libboost_system.so.1.69.0, needed by libboost_filesystem.so.1.69.0, not found (try using -rpath or -rpath-link)

这表明我仍然需要链接到libboost_system.so,即使它应该只是标题。在构建 Boost 本身以获得真正的仅标头系统库时,是否需要设置一些特殊标志?

【问题讨论】:

标签: c++ boost boost-system


【解决方案1】:

Boost 系统现在确实只有头文件,但提供了一个存根以向后兼容需要此类库的项目。

Boost.System 现在只有标题。存根库仍然是为了兼容性而构建的,但不再需要链接到它。

可能是 Boost FileSystem 尚未更新以删除存根,如以下行所示:https://github.com/boostorg/filesystem/blob/develop/build/Jamfile.v2#L29

【讨论】:

猜你喜欢
  • 2020-09-16
  • 1970-01-01
  • 1970-01-01
  • 2015-03-14
  • 1970-01-01
  • 1970-01-01
  • 2021-05-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多