CMake VTK DIR-NOTFOUND

VTK_DIR-NOTFOUND возвращается при использовании CMake. Я использую CMake GUI, и, как и другие ошибки пути, я могу указать правильный путь. Однако для ВТК это не работает. Я указываю на каталог, где VTConfig.файл cmake и другие. Также пробовал со всеми другими VTK dirs, но без каких-либо успехов. Я использую конфигурацию Visual Studio 12 2013 Win 64 для генерации, но также пытался с 2010.

enter image description here

указывая на пути вручную,

enter image description here

2 ответов


первое, что я бы проверил, это то, что является фактическим find_package() вызывается команда, где происходит ошибка? Возможно, этот вызов является чем-то необычным или явно имеет ключевое слово MODULE (это предотвратит VTKConfig.cmake файл не найден).

если это выглядит нормально, проверьте, не изменяет ли что-то переменную VTK_DIR. Вставьте следующее в верхней части списка CMakeLists.текстовый файл:

variable_watch(VTK_DIR)

это должно сказать вам, что, если что-нибудь, модифицируя его так, как вы не ожидали.

предполагая, что VTK_DIR на самом деле не изменяется, следующее, что вы можете попробовать, это установить CMAKE_PREFIX_PATH в каталог, содержащий VTKConfig.cmake файл (вы можете добавить это в GUI CMake, если его еще нет). Может быть, также попробовать variable_watch(CMAKE_PREFIX_PATH) слишком на всякий случай что-то изменяет, что внутренне в неожиданном было также.

если это все еще ничего не показывает, то, похоже, что что-то не так с вашим Установка CMake или VTK. Возможно, попробуйте более раннюю версию CMake и посмотрите, есть ли у вас другое поведение.


хотя в настоящее время принятый ответ является хорошим способом отладки, похоже, что вы создаете библиотеку облака точек (PCL) с двоичными файлами из unancyowen. В этом случае я предлагаю обеспечить ваш системные переменные среды настроены правильно который автоматизирует процесс, который вы сейчас проходите, и облегчит работу методов find_package (). Предполагая, что вы установили все в том же каталоге (т. е. где вы уже связаны с FLANN и Eigen) в Path должны быть добавлены следующие сторонние библиотеки PCL по умолчанию:

C:\Program файлы\PCL 1.7.2\3rdParty\FLANN\bin

C:\Program файлы\PCL 1.7.2\3rdParty\VTK\bin

C:\Program файлы\PCL 1.7.2\3rdParty\Eigen

C:\Program файлы\PCL 1.7.2\3rdParty\Boost

тогда Qt, поддержкой OpenNI. и т. д. которые устанавливаются отдельно.

и вы также можете добавить:

BOOST_INCLUDEDIR : C:\Program файлы\PCL 1.7.2\3rdParty\Boost\include\boost-X_XX\boost (замените X_XX номером вашей версии)

BOOST_LIBRARYDIR : C:\Program файлы\PCL 1.7.2\3rdParty\Boost\lib

BOOST_ROOT : C:\Program файлы\PCL 1.7.2\3rdParty\Boost

EIGEN_ROOT : C:\Program файлы\PCL 1.7.2\3rdParty\Eigen