4

我正在寻找一种在 .pro 文件中强制使用特定版本的 QT 的方法。更具体地说,我想强制qmake在我的项目中仅使用 QT 5.x 版本,而不是 QT 4.x 和 QT 5.x

有没有办法这样做?

PS:我不是在寻求停止/停止编译过程的方法(也就是检查 QT 版本,如果低于 5.x 就抛出 qFatal/equivalent)。我正在寻找一种在生成with时实际选择要使用的版本的方法Makefileqmake

4

3 回答 3

7

如果用户使用您不希望他使用的版本运行 qmake,您可能会抛出错误。前任:

lessThan(QT_MAJOR_VERSION, 5): error("requires Qt 5")
于 2014-06-26T07:12:26.413 回答
4

我真的怀疑你能做到这一点。qmake是框架的一部分,与库一起使用。当你说Qt of specific verion你的意思只是图书馆,但它是不正确的。

要使用特定版本的 Qt,您实际上需要运行不同版本的qmake. 如果您使用的是 QtCreator - 您应该在项目的选项中选择它,如果不是 - 输入文件的绝对路径qmake。您可以找出,qmake使用哪个版本的 Qt,您可以键入qmake --version.

于 2013-05-06T10:50:11.997 回答
1

正如 Amartel 在他的回答中所写,您应该指向正确的 qmake 版本(通过qmake --version在控制台中输入来检查)

可能是您的项目是使用错误的 qmake 可执行文件生成的,即使您发出 nmake clean 或 make clean,某些文件也不会被删除。

检查清理后源树中是否没有 Makefile(这些文件通常包含要使用的 qt 版本的路径,如果没有正确重新生成将指向错误的 Qt 版本)。

于 2013-08-08T14:22:45.440 回答