cmake 即使安装了 QtQuick 也找不到

问题描述 投票:0回答:2

我使用在线安装程序安装了 Qt 6.2.0,并选择了大部分用于桌面开发的模块。 我收到这条奇怪的消息:

/home/user/Qt/Examples/Qt-6.2.0/multimedia/video/mediaplayer/CMakeLists.txt:28: error: Found package configuration file: /home/user/Qt/6.2.0/gcc_64/lib/cmake/Qt6/Qt6Config.cmake but it set Qt6_FOUND to FALSE so package "Qt6" is considered to be NOT FOUND.  Reason given by package: Failed to find Qt component "Quick". Expected Config file at "/home/user/Qt/6.2.0/gcc_64/lib/cmake/Qt6Quick/Qt6QuickConfig.cmake" exists

英语不是我的主要语言,我不确定最后一句话的真正含义:

"Expected Config file at <path> exists"

实际文件存在:

$ ls /home/user/Qt/6.2.0/gcc_64/lib/cmake/Qt6Quick/Qt6QuickConfig.cmake 
/home/user/Qt/6.2.0/gcc_64/lib/cmake/Qt6Quick/Qt6QuickConfig.cmake

我不明白为什么它找不到 QtQuick 然后我不知道如何修复它...

c++ qt cmake qtquick2
2个回答
1
投票

找不到 Qt 组件“Quick”。

查看文件

lib/cmake/Qt6Quick/Qt6QuickTargets.cmake

变量

_IMPORT_PREFIX
告诉cmake
在哪里可以找到 QtQuick
include/
lib/

文件

通常是 cmake 文件的父-父-父文件夹
所以

/home/user/Qt/6.2.0/gcc_64
你的情况

用于调试,将其添加到

Qt6QuickTargets.cmake

get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
# ...

message("debug: _IMPORT_PREFIX = ${_IMPORT_PREFIX}")

文件

libQt6Quick.so
应该在
_IMPORT_PREFIX
路径

否则通过

找到它
cd /home/user/Qt/6.2.0/gcc_64
find . -name 'libQt6Quick.so*'

相关:
环境变量

QT_ADDITIONAL_PACKAGES_PREFIX_PATH

帮助qt找到
lib/cmake/Qt6(modulename)/Qt6(modulename)Targets.cmake
文件


0
投票

我必须在 ubuntu 中为 qtcreator 安装 qt6-declarative-dev 包才能自动获取它。在那之后,它开箱即用。

© www.soinside.com 2019 - 2024. All rights reserved.