在.pro文件中强制使用特定版本的QT

时间:2013-05-06 10:31:43

标签: qt qmake

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

有办法吗?

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

生成qmake时使用哪个版本

3 个答案:

答案 0 :(得分:5)

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

lessThan(QT_MAJOR_VERSION, 5): error("requires Qt 5")

答案 1 :(得分:4)

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

要使用特定版本的Qt,您最初需要运行不同版本的qmake。如果您正在使用QtCreator - 您应该在项目的选项中选择它,否则 - 键入文件qmake的绝对路径。您可以找到Qt qmake使用的版本,您可以输入qmake --version

答案 2 :(得分:1)

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

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

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