我正在寻找一种在.pro文件中强制使用特定版本QT的方法。更具体地说,我想强制qmake
仅使用QT 5.x版本而不是QT 4.x和QT 5.x
有办法吗?
PS:我不是要求一种方法来停止/停止编译过程(也就是检查QT版本,如果低于5.x只是抛出qFatal /等效)。我正在寻找一种方法来实际选择在使用Makefile
qmake
时使用哪个版本
答案 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版本)。