在这个qmake代码中:
MY_COMPILER = mingw
warning($$MY_COMPILER)
contains(MY_COMPILER, mingw)
{
INCLUDEPATH += ../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0/src
DEPENDPATH += ../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0/src
QMAKE_RPATHDIR *= ../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0/lib
contains(QWT_CONFIG, QwtFramework) {
LIBS += -F../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0/lib
}
else {
LIBS += -L../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0/lib
}
IPATH = ../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0/src
warning(Using MinGW compiler)
}
else {
INCLUDEPATH += ../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0-intel-shared/src
DEPENDPATH += ../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0-intel-shared/src
QMAKE_RPATHDIR *= ../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0-intel-shared/lib
contains(QWT_CONFIG, QwtFramework) {
LIBS += -F../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0-intel-shared/lib
}
else {
LIBS += -L../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0-intel-shared/lib
}
IPATH = ../../libsrc/Qwt/qwt-6.0.1-win-Qt-4.8.0-intel-shared/src
warning(Using Intel compiler)
}
无论我为变量MY_COMPILER定义什么,它都会保持第一个条件,同时通过第3行的警告发布我输入的正确变量。
如何发布变量然后检查它是否已定义?
任何努力都受到高度赞赏。
感谢。
答案 0 :(得分:1)
我认为您的代码没有任何问题,但您可以尝试这种方式:
CONFIG += mingw
mingw {
//...
} else {
//...
}
编辑:
你可以尝试的另一件事是在同一行中有条件和开口花括号, 如果我没记错的话,这在过去会引起一些问题。
然后声明如下:
contains(MY_COMPILER, mingw) {
//...
} else {
//...
}