我正在尝试将"git describe"的输出添加到我的应用程序的about窗口中,因此更容易找出人们使用的应用程序版本.
我可以通过添加以下编译器标志来实现:-DAPP_VERSION ="$(git describe HEAD)"
但由于该项目基于qmake,我想找到一种方法将其放入Qt项目文件中.这可能吗?如果是这样,怎么样?
编辑:我尝试添加以下内容:
QMAKE_CXXFLAGS + = -DAPP_VERSION ="$(git describe HEAD)"
但它只是给了我"-DAPP_VERSION =",所以我想我必须使用一些转义字符,但我不知道哪些和哪里.:/
由于这个链接问题解决了:http://robertcarlsen.net/blog/2009/01/06/qmake-xcode-bug-258
这是我用来测试它的qt项目示例:qt.pro:
###################################################################### # Automatically generated by qmake (2.01a) Thu Apr 2 16:23:05 2009 ###################################################################### TEMPLATE = app TARGET = DEPENDPATH += . INCLUDEPATH += . # Input SOURCES += qt.cpp QMAKE_CXXFLAGS += -DAPP_DATE=\\\"`date +'\"%a_%b_%d,_%Y\"'`\\\" QMAKE_CXXFLAGS += -DAPP_VERSION=\\\"`git describe`\\\"
qt.cpp:
#ifndef APP_DATE #define APP_DATE "1/1/1970" #endif #ifndef APP_VERSION #define APP_VERSION "local-dev" #endif #include#include int main(int argc, char *argv[]) { QApplication app(argc, argv); QString version = QString("version ") + APP_VERSION + ' ' + APP_DATE; QLabel *label = new QLabel(version); label->show(); return app.exec(); }