我正在添加QT:
find_package(Qt5 COMPONENTS Core Quick REQUIRED)
...
target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Quick ${OpenCV_LIBS})
但是cmake发现了一些python工件而不是预期的C:\ QT ...
我该怎么改变?试图找到一些例子,但没有找到任何明确的指令,哪个子文件夹的C:\ QT \我应该指定(任何地方)。
答案 0 :(得分:4)
find_package
搜索顺序如下:
CMAKE_PREFIX_PATH
,CMAKE_FRAMEWORK_PATH
,CMAKE_APPBUNDLE_PATH
<package>_DIR
,CMAKE_PREFIX_PATH
,CMAKE_FRAMEWORK_PATH
,CMAKE_APPBUNDLE_PATH
。HINTS
选项中搜索。PATH
环境变量。考虑到这一点,有几种方法可以为QT提供正确的版本:
QTDIR
)。并在CMake文件中使用它:
set(CMAKE_PREFIX_PATH "$ENV{QTDIR}")
find_package(Qt5 HINTS "$ENV{QTDIR}" COMPONENTS Core Quick REQUIRED)
Qt5_DIR
的环境变量指向正确版本的QT。然后,不需要对CMake文件进行其他更改。PATH
环境变量中找到所需的Qt版本。答案 1 :(得分:2)
您可以设置点击CMake Gui中的Add Entry
按钮并添加一个名为Qt5_DIR
的新变量,选择其类型为PATH
,将其值设置为C:\Qt\5.11.0\msvc2017_64\lib\cmake\Qt5
5.11.0
是Qt版本。此文件夹必须包含CMake需要正确设置的Qt5Config.cmake
。
答案 2 :(得分:0)
我的解决方法是将所需的QT放到PATH变量的顶部。如果你想让CMAKE找到它,它必须在PATH中。