cmake查看debug信息辅助cmake配置

以boost错误为例:
在(cmake-gui中)配置了变量:Boost_INCLUDE_DIR=Z:/BASE_ENV/forOpenMVS/boost_1_74_0后依然出错

CMake Error at Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165 (message):Could NOT find Boost (missing: Boost_INCLUDE_DIR iostreams program_optionssystem serialization)
Call Stack (most recent call first):Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:458 (_FPHSA_FAILURE_MESSAGE)Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2177 (find_package_handle_standard_args)CMakeLists.txt:122 (FIND_PACKAGE)

则提供解决bug的思路:

  • 1 首先,到cmake的安装目录里查看文件: CMake/share/cmake-3.18/Modules/FindBoost.cmake, 其定义了Boost的各个参数分别代表什么意思: 根据每个变量对应的实际意义重新配置一下即可;例如boost,主要配置两个参数:
  • Boost_INCLUDE_DIR: 含有boost头文件的目录
  • Boost_LIBRARYDIR: 偏好的含有boost库的库目录
  • 2 若配置完仍然有问题,可以根据 CMake/share/cmake-3.18/Modules/FindBoost.cmake 文件里规定的debug参数: Boost_DEBUG=ON(在cmake-gui中则是添加一个entery,然后其bool值为true即可,直接在CMakeLists.txt里,则是添加: set(Boost_DEBUG ON) 就会打开调试信息),根据调试信息再去对比生成的库的文件名称和搜索目录等信息,如下给出样例的调试信息:
[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1491 ] _boost_TEST_VERSIONS = "1.73.0;1.73;1.72.0;1.72;1.71.0;1.71;1.70.0;1.70;1.69.0;1.69;1.68.0;1.68;1.67.0;1.67;1.66.0;1.66;1.65.1;1.65.0;1.65;1.64.0;1.64;1.63.0;1.63;1.62.0;1.62;1.61.0;1.61;1.60.0;1.60;1.59.0;1.59;1.58.0;1.58;1.57.0;1.57;1.56.0;1.56;1.55.0;1.55;1.54.0;1.54;1.53.0;1.53;1.52.0;1.52;1.51.0;1.51;1.50.0;1.50;1.49.0;1.49;1.48.0;1.48;1.47.0;1.47;1.46.1;1.46.0;1.46;1.45.0;1.45;1.44.0;1.44;1.43.0;1.43;1.42.0;1.42;1.41.0;1.41;1.40.0;1.40;1.39.0;1.39;1.38.0;1.38;1.37.0;1.37;1.36.1;1.36.0;1.36;1.35.1;1.35.0;1.35;1.34.1;1.34.0;1.34;1.33.1;1.33.0;1.33"
<被作者省略>
boost_1_74_0/../lib64-msvc-14.0;Z:/BASE_ENV/forOpenMVS/boost/lib64-msvc-14.0;PATHS;C:/boost/lib;C:/boost;/sw/local/lib"
[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1871 ] _boost_LIBRARY_SEARCH_DIRS_DEBUG = "Z:/BASE_ENV/forOpenMVS/boost_1_74_0/lib;Z:/BASE_ENV/forOpenMVS/boost_1_74_0/../lib;Z:/BASE_ENV/forOpenMVS/boost_1_74_0/stage/lib;Z:/BASE_ENV/forOpenMVS/boost_1_74_0/../lib64-msvc-14.1;Z:/BASE_ENV/forOpenMVS/local/lib"
<被作者省略>
CMake Warning at Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1187 (message):New Boost version may have incorrect or missing dependencies and importedtargets
Call Stack (most recent call first):Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1311 (_Boost_COMPONENT_DEPENDENCIES)Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1919 (_Boost_MISSING_DEPENDENCIES)CMakeLists.txt:122 (FIND_PACKAGE)CMake Warning at Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1187 (message):New Boost version may have incorrect or missing dependencies and importedtargets
Call Stack (most recent call first):Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1311 (_Boost_COMPONENT_DEPENDENCIES)Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1919 (_Boost_MISSING_DEPENDENCIES)CMakeLists.txt:122 (FIND_PACKAGE)CMake Warning at Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1187 (message):New Boost version may have incorrect or missing dependencies and importedtargets
Call Stack (most recent call first):Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1311 (_Boost_COMPONENT_DEPENDENCIES)Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1919 (_Boost_MISSING_DEPENDENCIES)CMakeLists.txt:122 (FIND_PACKAGE)CMake Warning at Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1187 (message):New Boost version may have incorrect or missing dependencies and importedtargets
Call Stack (most recent call first):Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1311 (_Boost_COMPONENT_DEPENDENCIES)Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1919 (_Boost_MISSING_DEPENDENCIES)CMakeLists.txt:122 (FIND_PACKAGE)CMake Warning at Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1187 (message):New Boost version may have incorrect or missing dependencies and importedtargets
Call Stack (most recent call first):Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1311 (_Boost_COMPONENT_DEPENDENCIES)Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:1919 (_Boost_MISSING_DEPENDENCIES)CMakeLists.txt:122 (FIND_PACKAGE)[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2056 ] Searching for IOSTREAMS_LIBRARY_RELEASE: boost_iostreams-vc141-mt-x64-1_74;boost_iostreams-vc141-mt-x64;boost_iostreams-vc141-mt;boost_iostreams-vc140-mt-x64-1_74;boost_iostreams-vc140-mt-x64;boost_iostreams-vc140-mt;boost_iostreams-mt-x64-1_74;boost_iostreams-mt-x64;boost_iostreams-mt;boost_iostreams-mt;boost_iostreams
[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2111 ] Searching for IOSTREAMS_LIBRARY_DEBUG: boost_iostreams-vc141-mt-gd-x64-1_74;boost_iostreams-vc141-mt-gd-x64;boost_iostreams-vc141-mt-gd;boost_iostreams-vc140-mt-gd-x64-1_74;boost_iostreams-vc140-mt-gd-x64;boost_iostreams-vc140-mt-gd;boost_iostreams-mt-gd-x64-1_74;boost_iostreams-mt-gd-x64;boost_iostreams-mt-gd;boost_iostreams-mt;boost_iostreams
[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2056 ] Searching for PROGRAM_OPTIONS_LIBRARY_RELEASE: boost_program_options-vc141-mt-x64-1_74;boost_program_options-vc141-mt-x64;boost_program_options-vc141-mt;boost_program_options-vc140-mt-x64-1_74;boost_program_options-vc140-mt-x64;boost_program_options-vc140-mt;boost_program_options-mt-x64-1_74;boost_program_options-mt-x64;boost_program_options-mt;boost_program_options-mt;boost_program_options
[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2111 ] Searching for PROGRAM_OPTIONS_LIBRARY_DEBUG: boost_program_options-vc141-mt-gd-x64-1_74;boost_program_options-vc141-mt-gd-x64;boost_program_options-vc141-mt-gd;boost_program_options-vc140-mt-gd-x64-1_74;boost_program_options-vc140-mt-gd-x64;boost_program_options-vc140-mt-gd;boost_program_options-mt-gd-x64-1_74;boost_program_options-mt-gd-x64;boost_program_options-mt-gd;boost_program_options-mt;boost_program_options
[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2056 ] Searching for SYSTEM_LIBRARY_RELEASE: boost_system-vc141-mt-x64-1_74;boost_system-vc141-mt-x64;boost_system-vc141-mt;boost_system-vc140-mt-x64-1_74;boost_system-vc140-mt-x64;boost_system-vc140-mt;boost_system-mt-x64-1_74;boost_system-mt-x64;boost_system-mt;boost_system-mt;boost_system
[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2111 ] Searching for SYSTEM_LIBRARY_DEBUG: boost_system-vc141-mt-gd-x64-1_74;boost_system-vc141-mt-gd-x64;boost_system-vc141-mt-gd;boost_system-vc140-mt-gd-x64-1_74;boost_system-vc140-mt-gd-x64;boost_system-vc140-mt-gd;boost_system-mt-gd-x64-1_74;boost_system-mt-gd-x64;boost_system-mt-gd;boost_system-mt;boost_system
[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2056 ] Searching for SERIALIZATION_LIBRARY_RELEASE: boost_serialization-vc141-mt-x64-1_74;boost_serialization-vc141-mt-x64;boost_serialization-vc141-mt;boost_serialization-vc140-mt-x64-1_74;boost_serialization-vc140-mt-x64;boost_serialization-vc140-mt;boost_serialization-mt-x64-1_74;boost_serialization-mt-x64;boost_serialization-mt;boost_serialization-mt;boost_serialization
[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2111 ] Searching for SERIALIZATION_LIBRARY_DEBUG: boost_serialization-vc141-mt-gd-x64-1_74;boost_serialization-vc141-mt-gd-x64;boost_serialization-vc141-mt-gd;boost_serialization-vc140-mt-gd-x64-1_74;boost_serialization-vc140-mt-gd-x64;boost_serialization-vc140-mt-gd;boost_serialization-mt-gd-x64-1_74;boost_serialization-mt-gd-x64;boost_serialization-mt-gd;boost_serialization-mt;boost_serialization
[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2056 ] Searching for REGEX_LIBRARY_RELEASE: boost_regex-vc141-mt-x64-1_74;boost_regex-vc141-mt-x64;boost_regex-vc141-mt;boost_regex-vc140-mt-x64-1_74;boost_regex-vc140-mt-x64;boost_regex-vc140-mt;boost_regex-mt-x64-1_74;boost_regex-mt-x64;boost_regex-mt;boost_regex-mt;boost_regex
[ Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2111 ] Searching for REGEX_LIBRARY_DEBUG: boost_regex-vc141-mt-gd-x64-1_74;boost_regex-vc141-mt-gd-x64;boost_regex-vc141-mt-gd;boost_regex-vc140-mt-gd-x64-1_74;boost_regex-vc140-mt-gd-x64;boost_regex-vc140-mt-gd;boost_regex-mt-gd-x64-1_74;boost_regex-mt-gd-x64;boost_regex-mt-gd;boost_regex-mt;boost_regex
CMake Error at Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165 (message):Could NOT find Boost (missing: iostreams program_options systemserialization) (found version "1.74.0")
Call Stack (most recent call first):Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:458 (_FPHSA_FAILURE_MESSAGE)Z:/BASE_ENV/CMake/share/cmake-3.18/Modules/FindBoost.cmake:2177 (find_package_handle_standard_args)CMakeLists.txt:122 (FIND_PACKAGE)

使用cmake调试“Could NOT find Boost (missing: iostreams program_options system“相关推荐

  1. linux下使用VS CODE + CMAKE 调试C++程序

    Linux下使用VS Code + CMake 调试c++程序 - 灰信网(软件开发博客聚合)

  2. Linux开发_WARNING: ‘aclocal-1.14‘ is missing on your system.

    在编译zmq时遇到的问题: WARNING: 'aclocal-1.14' is missing on your system. 意思是make没有找到aclocal 这种原因是因为缺失一些make文 ...

  3. cmake Could NOT find Boost (missing: xxx 的问题 已解决

    https://www.cnblogs.com/tang-zhou-zhou/p/16067695.html boost一直无法连接,根据上面链接配置项目的cmakelist文件,(注意s,要完全一致 ...

  4. vscode + cmake调试配置

    文章目录 前言 Using C++ on Linux in VS Code vscode中编译过程配置 vscode中调试配置 vscode中C/C++配置 实际案例 vscode调试的其他问题 前言 ...

  5. 解决Could NOT find Boost (missing: log filesystem) (found version “1.76.0“)

    思路: 找到boost库,安装即可 这里给出一个最简单的方法 首先安装msys https://www.msys2.org/ 下载并安装,比如安装在d:/soft/msys64 然后运行msys2.e ...

  6. cmake出现undefined reference to `boost::this_thread::hiden::sleep_until(timespec const)‘

    如果不是你没有链接boost的问题那就是版本问题,我用的boost1.61出现了这个问题,然后使用boost1.53就不会出错了

  7. windows cmake调试Google test 报错:VERSION keyword not followed by a value...

    cmake 生成makefile 这一步时,报错: C:\Users\-----\googletest-main\googletest\mybuild>cmake -G "MinGW ...

  8. boost 普通用户读取SYSTEM创建的共享内存

    boost 共享内存 权限 注意 代码 原创文章禁止转载 www.alom.com.cn 注意 使用system创建的共享内存,使用普通用户读取,创建时要设置权限 . permissions ps; ...

  9. composer update 的时候提示the requested PHP extension pcntl is missing from your system.的方法处理

    今天在composer require aliyuncs/oss-sdk-php的时候报了一个错误如下: 解决办法是在后面加上 --ignore-platform-reqs 整体命令行如下: comp ...

最新文章

  1. OpenCV 【十七】离散傅立叶变换
  2. Swin-Transformer又又又下一城 | 看SwinTrack目标跟踪领域独领风骚
  3. Spring-boot-文件上传大小限制
  4. Mysql报错Fatal error: Can#39;t open and lock privilege tables: Table #39;mysql.host#39; doesn#39;t...
  5. 全新版本仿网易云音乐来啦
  6. 迅雷的user-agent
  7. switch中case后可以是表达式吗_自学C++基础教程【流程控制语句】(switch语句 )...
  8. 用计算机数字技术制作的电影是,如何面对电影制作中的数字技术
  9. 计算机技能节活动作文,技能节感想作文
  10. 几何元素网页设计的力量,让人眼前一亮
  11. Nowcoder farm ( 树状数组、二维前缀和、二维偏序 )
  12. 【VS开发】VS2010 MFC中控件、对话框等背景颜色动态修改的方法
  13. 递增三元数组——第九届蓝桥杯C语言B组(省赛)第六题
  14. Java中的封装、继承、多态理解
  15. CSS3动画实现牛顿摆
  16. Android 系统的分区和文件系统(一)--Android分区的大概框架
  17. 每日一题——判断素数
  18. initializationError报错
  19. 软件工程案例学习-图书管理系统
  20. 十进制进制法_什么是十进制计数法

热门文章

  1. 计算机毕业设计,vue+springboot的农产品溯源系统,内附源码
  2. 解码保存全部BMP图像
  3. Initialization in《The Java® Virtual Machine Specification Java SE 7 Edition》
  4. 美国国防部可信计算机系统评估系TCSEC
  5. 以程序员的视角带你看西安
  6. IDEA快捷键大全(详细)
  7. python编程:从入门到实践习题第五章5-8~5-11
  8. Python字典列表读取存储
  9. 美国主流网站所使用的JavaScript框架
  10. Error:Execution failed for task ':app:validateSigningDevDebug'. Keystore file E:\workspace\trunk\H