我首先要检查的是在错误发生时实际调用的find_package()
命令是什么?也许这个调用有点不寻常,或者明确使用了MODULE关键字(这将防止找到VTKConfig.cmake
文件)。
如果看起来没问题,请检查是否有东西修改了VTK_DIR变量。请在您最顶层的CMakeLists.txt文件中添加以下内容:
variable_watch(VTK_DIR)
这应该告诉您有什么在不符合预期的方式下对其进行修改。
假设VTK_DIR没有实际被更改,接下来您可以尝试将CMAKE_PREFIX_PATH
设置为包含VTKConfig.cmake
文件的目录(如果它还没有在CMake GUI中添加)。也许还应该尝试variable_watch(CMAKE_PREFIX_PATH)
,以防万一有些东西以意外的方式在内部进行修改。
如果这仍然没有揭示任何问题,那么很可能是您的CMake或VTK安装出了问题。也许尝试使用早期的CMake版本并查看是否有不同的行为。
C:\Program Files\PCL 1.7.2\3rdParty\FLANN\bin
C:\Program Files\PCL 1.7.2\3rdParty\VTK\bin
C:\Program Files\PCL 1.7.2\3rdParty\Eigen
C:\Program Files\PCL 1.7.2\3rdParty\Boost
然后是单独安装的Qt、OpenNI等。
你还可以添加:
BOOST_INCLUDEDIR:C:\Program Files\PCL 1.7.2\3rdParty\Boost\include\boost-X_XX\boost(将X_XX替换为您的版本号)在显示如下内容的区域:
VTK - DIR:未找到
您可以复制粘贴位置,或者手动输入地址,或者浏览名为VTKConfig.cmake
的文件。该文件通常位于VTK的构建文件夹内。这是我解决问题的方法。不妨试试看!
ConfigVTK.cmake
是否在lib/cmake/vtk-6.2
中?你使用的 CMake 版本是多少? - usr1234567C:/Program Files/PCL 1.7.2/3rdParty/VTK
吗? - MrPedru22