Linux make 无法链接到 Boost 非标头库

Linux make can't link against Boost non-header only libraries

本文关键字:Boost make 链接 Linux      更新时间:2023-10-16

我成功地切换到Linux,我真的开始喜欢上它了。除了我不能将代码链接到只有非头文件的Boost库。

我所采取的步骤:

  1. 在终端运行sudo apt-get install libboost.*-dev安装Boost库
  2. 让CMake生成我的make文件并找到Boost库,就像我在Windows上做的那样。
  3. 运行make编译

同样的代码在Windows和Microsoft Visual c++下可以很好地编译和链接。

更多信息
    控制台输出

我还需要做什么?

从你的输出和你的CMakeFiles看起来不像你链接你的代码到Boost文件系统库。

,

target_link_libraries(RCMeta ${Boost_FILESYSTEM_LIBRARY} ${Boost_REGEX_LIBRARY})

注意:我可能把那个库的变量名搞错了,你可能需要再次检查。

您也可以使用通用的${Boost_LIBRARIES}变量

target_link_libraries(RCMeta ${Boost_LIBRARIES})