【问题标题】:How to import open source projects into QT Creator 5.7?如何将开源项目导入 QT Creator 5.7?
【发布时间】:2016-11-02 22:18:56
【问题描述】:

我一直在尝试将一个开源项目导入 Qt-Creator 以读取代码并通过调试从中学习。不幸的是,我无法构建导入的项目。我发现了两个有趣的项目:

https://sourceforge.net/projects/qpass/files/source/

https://github.com/keepassx/keepassx

我通过 File-->New File or Project-->Import Project-->Import as qmake Project (Limited Functionality) 将它们导入 Qt Creator。之后我尝试运行该项目,但出现错误:

G:\Qt Projekte\keepassx-2.0.3\src\autotype\test\AutoTypeTest.h:23: Fehler: autotype/AutoTypePlatformPlugin.h: 没有这样的文件或目录

该文件确实存在并且在项目中。我google了一下,发现将Qt4项目导入Qt5时可能会出现问题。一些用户建议在 pro-File 中插入“Qt += widgets”。但这并没有解决我的问题。

有人知道如何解决它吗?我将项目导入 Qt Creator 的方式是否错误?

【问题讨论】:

  • 如果是keepassx:我认为你不需要“导入”任何东西,只需打开它的CMakeLists.txt文件。
  • 你能详细解释一下吗?如何在 Qt Creator 中打开此文件以便运行项目?

标签: qt import build open-source


【解决方案1】:

您想使用“打开文件或项目”而不是“新建文件或项目”。由于两个项目都使用 cmake,您应该打开它们最顶层的 CMakeLists.txt 文件。我已经验证 both 项目在 OS X 上使用 macports 的 Qt/Creator 以这种方式打开,并使用默认的 CodeBlocks - Unix Makefiles CMake Generator 成功构建,或者代码块 - 忍者

为了让构建继续进行,我必须做以下事情:

  1. 在项目的构建设置中将 macports 二进制路径 (/opt/local/bin) 添加到系统环境。这样cmake 就会找到ninja。如果您不使用 ninja,这是可选的,但 ninja 可以通过一个良好的整数因子加快构建速度,因此建议在 make 上使用。

  2. /opt/local/include 路径添加到QPass 的CMakeLists.txt 中的INCLUDE_DIR 路径:否则它不会从macports 中找到gcrypt 的包含文件。这在大多数 Linux 发行版上都不是问题,但您需要在 Windows 上进行类似的修复。

【讨论】:

  • 但是当我执行文件 --> 打开文件或项目时,我必须打开什么?我只知道那些标准的 *.pro 文件,但它们不存在。我正在使用 Windows,但我不知道 macport 是什么。 CodeBlocks - Unix CMake 生成器是什么意思?对不起,我完全迷路了,不知道你的意思。
  • @Peter 查看编辑。 cmake生成器是cmake工具用来生成构建工具文件的过程。 CMake 就像 qmake:它接受一个项目文件,并生成一个“makefile”。 qmake 可以为 gnu make、microsoft make (nmake/jom)、XCode 和 Visual Studio 生成输出。 CMake 可以为 ninja(首选!- 非常快速的构建)、make 和许多其他工具/IDE 生成输出。
  • 我很抱歉,但它仍然无法正常工作。我选择了他们的(QPass 和 Keepassx)最上面的 CMakeLists.txt,但没有任何反应。选择 QtCreator 后问我如何配置项目。我可以选择的唯一选项是“Desptop Qt 5.7.0 MiniGW 32 位”。点击“配置项目”后,它似乎是一个空项目。我有一个包含应用程序名称的文件夹,例如Keepassx,但它是空的,一切都是灰色的,意味着不可选择。所以我无法运行该项目,甚至无法查看任何文件。
  • 您确实安装了 cmake 并且可以用于 Qt Creator,对吗?否则什么都行不通。
  • 我很抱歉回答迟了。我不得不阅读一些关于 cmake 的功能,因为我什么都不知道。所以现在cmake已经安装好了。我尝试加载和构建上述项目,但出现以下错误:C:\Program Files\CMake\share\cmake-3.7\Modules\FindQt4.cmake:1318: Fehler: Found unsuitable Qt version "5.7.0" from C :/Program Files (x86)/Qt Creator/5.7/mingw53_32/bin/qmake.exe,此代码需要Qt 4.x CMakeLists.txt:151 (find_package)。显然我有一个错误的 Qt 版本。下一个问题是。我可以安装两个版本的 Qt 吗?如果是,如何不搞砸一切?
猜你喜欢
  • 1970-01-01
  • 2014-03-30
  • 2021-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-17
  • 1970-01-01
  • 2015-07-27
相关资源
最近更新 更多