从 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
进行链接,即使它应该只是 header 。在构建 Boost 本身以获得真正的仅 header 系统库时,我是否需要设置一些特殊标志?
最佳答案
Boost 系统现在确实只有头文件,但提供了一个 stub 以便与需要此类库的项目向后兼容。
Boost.System is now header-only. A stub library is still built for compatibility, but linking to it is no longer necessary.
Boost FileSystem 可能尚未更新以删除 stub ,如以下行所示:https://github.com/boostorg/filesystem/blob/develop/build/Jamfile.v2#L29
关于c++ - Boost 系统 1.69.0 不只是标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54184576/