【问题标题】:Failed to find Qt component "Widgets" config file at ""未能在“”处找到 Qt 组件“Widgets”配置文件
【发布时间】:2021-10-28 05:16:29
【问题描述】:

我正在设置一台新计算机作为开发机器,并使用在另一台计算机上运行良好的 cmake。

我已将 Qt6 安装到我的主目录中,而在旧计算机上,它已安装到 /opt 目录中。

这是 CMakeLists.txt 文件的样子:

 set(Qt_DIR "~/Qt/6.1.2/gcc_64/lib/cmake/")
 set(Qt_version 6)
 ...
 find_package(Qt${Qt_version} COMPONENTS Core Widgets   REQUIRED) 

失败并显示以下错误消息:

CMake Error at GUI/CMakeLists.txt:72 (find_package):
  Found package configuration file:

    /home/menkaur/Qt/6.1.2/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 "Widgets" config file at ""

文件~/Qt/6.1.2/gcc_64/lib/cmake/Qt6Widgets/Qt6WidgetsConfig.cmake确实存在

我应该做一些额外的配置吗?

【问题讨论】:

  • 我很不确定~ 在 CMake 中是否正常工作。尝试将其替换为/home/menkaur

标签: c++ qt cmake qt6


【解决方案1】:

不要使用set(Qt_DIR "~/Qt/6.1.2/gcc_64/lib/cmake/"),使用-DCMAKE_PREFIX_PATH=~/Qt/6.1.2/gcc_64运行cmake。

【讨论】:

  • 这在我尝试使用 -D WITH_QT=6 从源代码编译 OpenCV 时帮助了我。
【解决方案2】:

奇趣科技安装程序不会在安装过程中检查依赖项,而是在 find_package(qt_module) 中检查依赖项。如果未找到依赖项,则 find_package(qt_module) 将失败且不显示错误消息。因此,您应该确保系统具有所有required development libraries

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-17
    相关资源
    最近更新 更多