CMake_3_18_5 找不到 Boost_1_72_0的库文件

安装的Cmake 3.18.5版本,Boost 1.72.0 使用MinGW和VS2019都编译过,得到 .lib以及 .a 文件

但在 VS code 中使用的时候 cmake 能够成功找到并识别出 Boost 的头文件和库文件的存储文件夹,对于一些不需要编译支持的头文件能够成功使用,但无法识别出Boost静态库

CMakeLists 如下:

#添加头文件路径
include_directories(${PROJECT_SOURCE_DIR}/add)
#
aux_source_directory(./ DIR_SRCS)

set(Boost_USE_STATIC_LIBS ON)
set(Boost_USE_MULTITHREADED ON)
find_package(Boost)
include_directories(${Boost_INCLUDE_DIRS})

message("Boost Include path :" ${Boost_INCLUDE_DIRS})
message("Boost Library path :" ${Boost_LIBRARY_DIRS})
message("Boost Libraries : " ${Boost_LIBRARIES})

add_executable(main ${DIR_SRCS})

target_link_libraries(main mylib)
target_link_libraries(main ${Boost_LIBRARIES})

cmake之后的结果如下:

PS L:\Sourse\build> cmake ..
Boost Include path :C:/Boost/include/boost-1_72
Boost Library path :C:/Boost/stage/lib
Boost Libraries : 
-- Configuring done
-- Generating done
-- Build files have been written to: L:/Sourse/build

输出的 Boost Libraries 项是空的,如果识别到对应的库文件这里会显示出来,但实际没有识别到,

如果在代码里 #include<boost/thread.hpp>之后能成功cmake,但之后make的时候会链接失败,提示没有找到定义这些的。

去找了一圈都没找到什么可以解决的方法,有大佬能帮忙解决一下cmake找不到Boost库的这种问题me

查看全部
qq_43232701
qq_43232701
2020/12/04 09:14
  • c++
  • 点赞
  • 收藏
  • 回答
    私信

0个回复