1

自 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 本身以获得真正的仅标头系统库时,我是否需要设置一些特殊标志?

4

1 回答 1

3

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

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

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

于 2019-01-14T15:45:14.323 回答