Qt是否像.NET一样维护有关程序的任何版本信息?像构建号码?或者它是否提供了访问SVN修订版的简便方法?
答案 0 :(得分:11)
没有
但是如果你正在使用qmake
,那么你可以根据任意命令的结果在构建系统中设置编译器标志,这些命令可以用来做你想要的。
例如,如果您使用的是git,则可以在.pro
文件中执行以下操作:
REVISION = $$system(git rev-parse HEAD)
DEFINES += APP_REVISION=$$REVISION
在编译程序时,这会给你一个APP_REVISION
宏,你可以这样使用:
// stringize macro
#define _STR(X) #X
#define STR(X) _STR(X)
QTextStream(cout) << "MyApp revision " STR(APP_REVISION) << endl;