在我的CMake程序包中,有一个对find_package
的调用。这成功了,太好了!但是,事实证明这是该软件包的错误版本。我现在要删除该程序包。但是,我不知道它在我的系统上的什么位置,也不知道CMake必须在哪里找到-config.cmake
文件。有没有办法让find_package
给我这些信息?或至少详细地告诉我它在哪里搜索?
我虽然可能在变量CMAKE_MODULE_PATH
中,但是对我来说这是空的。所以我猜它在默认路径的某个地方。但是CMake会在很多地方搜索软件包,但在我记得的通常位置都找不到它。
答案 0 :(得分:3)
从CMake 3.17开始,cmake
command line对打印CMake find_*
命令的所有所有的搜索目录具有本机支持。使用--debug-find
标志:
cmake --debug-find ..
答案 1 :(得分:2)
好的,我在这里找到了解决方法:
https://riptutorial.com/cmake/example/21128/debug-find-package---errors
结果是有一个特殊的调试标志,可让find_package
告诉您它在哪里搜索:
cmake -D CMAKE_FIND_DEBUG_MODE=ON ..