2016-12-23 2 views
1

J'ai fait un fichier CMakeLists très simple similaire à celui montré here:erreur lors de la génération CMake projet VS utilisant VTK

cmake_minimum_required (VERSION 3.5) 

project (MyProject) 

find_package (VTK REQUIRED NO_MODULE) 
include (${VTK_USE_FILE}) 

add_library (MyLib STATIC source.cpp) 
target_link_libraries(MyLib ${VTK_LIBRARIES}) 

Après avoir configuré dans CMake I définir la variable VTK_DIR dans le répertoire contenant le fichier VTKConfig. Après avoir généré dans CMake je reçois 3 erreurs:

Target "MyLib " links to target "Qt5::XXX" but the target 
was not found. Perhaps a find_package() call is missing for an IMPORTED 
target, or an ALIAS target is missing? 

où XXX est soit l'aide, réseau ou UiTools.

Est-ce que quelqu'un sait comment résoudre ce problème?

Répondre

0

Cela ne ressemble pas à un problème vtk mais plutôt à un problème qt. Très probablement, les bibliothèques vtk que vous utilisez dépendent de certains modules Qt que vous devez installer séparément (ils ne viennent pas avec vtk). Si vous les avez déjà, il suffit de mettre

find_package(Qt5 Help Network UiTools REQUIRED) 

avant la ligne, CMake find_package (VTK) devrait le trouver. Alternativement, si vous avez compilé VTK vous-même et que vous êtes sûr de ne pas avoir besoin de qt pour quelque chose, désactivez toutes les parties dépendantes de qt dans cmake (recherchez simplement "qt" dans cmake et désactivez tout ce que vous n'avez pas besoin) et le compiler à nouveau.