我制作了一个非常简单的cmakelists文件,与此处显示的文件相似:
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})
在CMAKE中配置后,我将VTK_DIR变量设置为包含VTKConfig文件的目录。在Cmake生成后,我得到了3个错误:
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?
xxx有帮助的地方,网络或uitools。
有人知道如何解决这个问题吗?
这看起来不像VTK问题,而是QT问题。最有可能使用的VTK库取决于您需要单独安装的一些QT模块(它们不带VTK)。如果您已经有它们,只需放置
find_package(Qt5 Help Network UiTools REQUIRED)
在Find_package(VTK)行之前,CMAKE应该找到它。
另外,如果您自己编译了VTK,并且确定您不需要任何QT,请禁用cmake中的所有QT依赖性部分(只需在cmake中搜索" qt",并禁用您不需要的所有内容)并再次编译。