Qt 版本歧义?

Qt Version Ambiguity?

我已经为 Ubuntu x64 安装了最新版本的 Qt。 (http://download.qt.io/official_releases/qt/5.0/5.0.2/qt-linux-opensource-5.0.2-x86_64-offline.run) 当我从 Qt Creator 的关于部分检查版本时,它写着“基于 Qt 5.0.2(64 位)”。但是这次当 "qmake --version" 从终端检查时它是“Using Qt version 4.8.6” 我实际使用的是哪个版本的 qt?

为什么我会问这个问题:我也安装了Qtserialport。但是我无法添加 "project.pro" 文件 QT+=serialport(Qt5x 需要),这导致了 makefile 错误。只允许 CONFIG+=serialport(Qt4x 需要)。

我还有: Qt Creator 版本为 2.7.0 Qmake版本是2.0.1a

Qt Creator 是一个 IDE。它可以与多个 Qt 版本一起使用。除非您计划扩展 Qt Creator 本身,否则它基于自身的 Qt 版本是不相关的。

您可以(并且经常会!)同时安装多个 Qt 版本。您 "choose" 他们通过 运行ning 给定 Qt 版本的 qmake 为给定项目。当您 select 项目配置时,Qt Creator 会为您完成。那个 qmake 可以在你的路径中,但不一定是。如果你安装了多个版本,只有路径中找到的第一个 qmake 是默认的,其他的必须手动调用。

当您在 Qt Creator 中配置您的项目时,您可以选择您希望构建它的 Qt 版本(至少一个版本,但实际上可以是几十个!)。

从命令行构建时也是如此:创建一个构建目录,转到该目录,然后运行 select在项目的源代码上编辑 qmake。

假设您在 /Qt/4.7.4 中安装了 Qt 4.7.4,在 /Qt/5.7.0 中安装了 Qt 5.7.0,并且您的项目源代码在 ~/src/project 中。您希望使用这两个版本进行构建。那么:

# 4.7.4 build
mkdir -p ~/build/project-4.7.4
cd ~/build/project-4.7.4
/Qt/4.7.4/bin/qmake ~/src/project
make -j
# 5.7.0 build
mkdir -p ~/build/project-5.7.0
cd ~/build/project-5.7.0
/Qt/5.7.0/bin/qmake ~/src/project
make -j