qmake是用来为不同的平台的开发项目创建makefile的Trolltech开发一个易于使用的工具。qmake简化了makefile的生成,所以为了创建一个makefile只需要一个只有几行信息的文件。qmake可以供任何一个软件项目使用,而不用管它是不是用Qt写的,尽管它包含了为支持Qt开发所拥有的额外的特征。
qmake基于一个项目文件这样的信息来生成makefile。项目文件可以由开发者生成。项目文件通常很简单,但是如果需要它是非常完善的。不用修改项目文件,qmake也可以为为Microsoft Visual Studio生成项目。众所周知,qmake里是不提供
- #if (QT_VERSION >= QT_VERSION_CHECK(4, 5, 0))
- // …
- #endif
这种语法的qmake的语法是
条件{
…执行的动作1…
}else{
…执行的动作2…
}
所以如果要执行根据版本控制的代码可以用
- greaterThan(QT_MAJOR_VERSION, 4)|equals(QT_MAJOR_VERSION,4){
- greaterThan(QT_MINOR_VERSION, 5)|equals(QT_MINOR_VERSION, 5){
- message("bla,bla,bla ....")
- }
- }else{
- message("pla,pla,pla ....")
- }
不过需要注意的是,greaterThan和equals是在qmake代码里没有公布的,详细需要看qmake的源代码
- qt/qmake/project.cpp
- if(!qmake_test_functions) {
- qmake_test_functions = new QMap;
- qmake_test_functions->insert("requires", T_REQUIRES);
- qmake_test_functions->insert("greaterThan", T_GREATERTHAN);
- qmake_test_functions->insert("lessThan", T_LESSTHAN);
- qmake_test_functions->insert("equals", T_EQUALS);
小结:在Qt工程文件中根据不同版本号使用不同源码的内容介绍完了,简单的介绍了一下,希望对你有帮助吧。