构建 Qt 5 和 CMake 应用程序需要什么包?

构建 Qt 5 和 CMake 应用程序需要什么包?

我正在努力建立奇爱在 Ubuntu 13.10 上,它需要 Qt 5 并使用 CMake 作为其构建系统。我需要安装什么软件包才能为其提供此处要求的文件?

有很多*qt5*软件包,我尝试安装那些看起来很有希望的软件包,但没有效果。我发现的所有讨论要么是一切都运行正常,要么是在谈论编写 CMake 构建规则而不是执行它们。我对 Debian/Ubuntu 打包的组织没有太多经验。

CMake Error at CMakeLists.txt:14 (find_package):
  By not providing "FindQt5Core.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Qt5Core", but
  CMake did not find one.

  Could not find a package configuration file provided by "Qt5Core"
  (requested version 5.0) with any of the following names:

    Qt5CoreConfig.cmake
    qt5core-config.cmake

  Add the installation prefix of "Qt5Core" to CMAKE_PREFIX_PATH or set
  "Qt5Core_DIR" to a directory containing one of the above files.  If
  "Qt5Core" provides a separate development package or SDK, be sure it has
  been installed.

答案1

我在尝试编译时偶然发现了这个问题KeePassX 2.0

对我有帮助的是使用apt 文件搜索缺失的包:

例如运行这个:

apt-file 搜索 Qt5CoreConfig.cmake

退回以下包裹:

qtbase5-dev:/usr/lib/x86_64-linux-gnu/cmake/Qt5Core/Qt5CoreConfig.cmake

qtbase5-gles-dev:/usr/lib/x86_64-linux-gnu/cmake/Qt5Core/Qt5CoreConfig.cmake

然后可以使用 apt 或 apt-get 安装这些软件包,例如:

sudo apt 安装 qtbase5-dev

答案2

我遗漏了两件事:

  • 构建不成功后,我必须删除CMakeCache.txt(或者干脆清除构建目录);否则cmake即使已经安装了所需的包也会报告相同的错误。

  • 提供配置文件的软件包*.cmake的名称形式为qt*5-dev,例如,对于我的问题中的错误,qtcore5-dev

答案3

如果您尝试了上述解决方案但没有效果,也请尝试一下apt-get install libqt5opengl5-dev,这对我有用。

答案4

另外,可以通过 rpm 直接安装包来解决安装问题(参见内容https://centos.pkgs.org/7/epel-x86_64/phonon-qt5-devel-4.8.3-2.el7.x86_64.rpm.html)。

另一种可能性是通过“源构建和安装”:http://www.linuxfromscratch.org/blfs/view/7.9/kde/phonon.html

这通常是由于通过“apt-get”安装 phonon4qt5(版本 4.8.3)不正确造成的。有时,可以通过“synaptic”安装来解决缺少的库/软件包部分。

相关内容