【问题标题】:Starting with KDE Frameworks 5 and Qt Creator从 KDE Frameworks 5 和 Qt Creator 开始
【发布时间】:2017-08-10 08:02:43
【问题描述】:

我在我的系统中安装了新的 QtCreator 和 Qt 5.8。 据我了解,我的 PC 上现在有 2 个 Qt 工具链:一个在 ~/Qt/5.8(默认路径)中,一个在 usr/lib/x86_64-linux-gnu/qt5/bin 中,KDE 将其存储用于自己的目的。 /usr/lib/x86_64-linux-gnu/qt5/bin 中的版本是 5.7。
好的,如果我在 Qt Creator 中创建一个虚拟项目,那么它将只允许我选择 Qt 5.8 Kit。如果我这样做了,我将在我想要链接的任何 KDE 框架模块上获得 Project ERROR: Unknown module(s) in QT: KF5DBusAddons
(我在 .pro 文件中通过 QT += KF5DBusAddons 链接它们)
这似乎是因为 Qt 5.8 不知道 /usr/lib/x86_64-linux-gnu/qt5/mkspecs/modules/ 中的 KDE 模块,因为它改为查看 ~/Qt/5.8/gcc_64/mkspecs/modules/。并且没有 KDE 模块。不建议将它们作为 Qt Online Installer 工具中的选项。

很好,所以我需要从/usr/lib/x86_64-linux-gnu/ 添加一个 Qt5.7,或者在 Qt 5.8 之上安装 KDE Frameworks 5。我已经尝试了第一个并遇到了配置问题。它仍然看不到 /usr/lib/x86_64-linux-gnu/ 中的模块。

我的问题是:是否有关于如何开始使用 KDE 框架和 Qt Creator 的工作教程。我可以坚持使用 qmake 工具链而不是 cmake 文件吗?或者关于如何将系统 Qt 库作为工具包添加到 QtCreator 中的工作解释?

附:我正在尝试使用 /usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64/qmake.conf 而我的 qmake 结果命令行是 qmake /home/user1/dev/kdbustest/kdbustest.pro -spec /usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64/ CONFIG+=debug && /usr/bin/make qmake_all

【问题讨论】:

  • 您正在使用哪个发行版会很好。此外,我真的怀疑在大多数发行版中(除非使用 Arch 或其他为最新版本提供预构建包的发行版),他们甚至使用 5.7 或 5.6 作为各自的 KDE 开发版本。如果您想开发基于 KDE 的应用程序,我建议您坚持使用包管理器提供的默认包,并且您的发行版也使用这些包。否则你会遇到严重的错误和兼容性问题。
  • 我已经下架了 Kubuntu 17.04,我认为它仍然是测试版,但将在一个月内发布。默认情况下,它有 5.7 板载。所以它们是默认包。
  • 所以你有一个 5.7 和你自己的 5.8? qt-chooser 是否可以选择默认使用的版本?此外,如果您想将 5.8 与使用 5.7 构建的软件包一起使用,您可能会遇到很多问题(正如我在之前的评论中提到的),尤其是在涉及 QML 时。
  • qtchooser -print-env 说默认切换到 5.7 QTLIBDIR="/usr/lib/x86_64-linux-gnu" 我没碰。而且我对 5.7 很好,因为显然它只有 KDE 框架模块。我不想将 5,8 与 5,7 包一起使用。我想让我的 QtCreator 4.2 使用 5.7 工具包。 5.8 是在线安装程序的套件。我可以禁用它并仅获取 QtCreator。但这并没有改变,因为问题在于使其与默认 Qt 一起工作,在线下载的 5.8 像魅力一样自动附加到 QtCreator。

标签: linux qt qt-creator kde


【解决方案1】:

Qt creator 对构建中使用的 qt 版本有自己的配置。

配置在tools > options > build and run > Kits

确保您选择的套件(例如桌面)具有正确的 Qt 版本集。

如果您想要的 qt 版本不在下拉列表中,您可以在 Qt 版本选项卡中添加它。

还要检查您是否选择了正确的工具包来构建您的项目(请参阅构建配置按钮 - 运行/绿色播放按钮上方)

mkspec 应该自动设置为使用系统 qt 版本和模块,但是您可以通过将 Qt mkspec (in tools > options > build and run > Kits) 设置为 /usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64/ 来确保

在这一切之后,您可以通过在运行build > Run qmake 时查看编译输出窗格来验证正在运行的命令是否正确。

【讨论】:

  • 嗯,看来我昨天做错了什么。今天刚刚用一个新创建的工具包重试了它,一切正常。 qmkae 可以看到 KDE 框架模块。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-02-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多