2012-03-27 40 views
1

檢測變量在此QMAKE代碼: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

'包含($$ MY_COMPILER, 「MinGW的」)'也許? – AJG85 2012-03-27 19:04:42

+0

沒有工作:(但是,無論如何感謝。 – Sam 2012-03-27 19:19:17

+0

我認爲$$這個符號應該是基本上這樣的東西。通常我會根據需要爲不同的編譯器使用不同的make文件。 – AJG85 2012-03-27 19:31:22

回答

1

我看不出有什麼毛病你的代碼,但你可以嘗試這種方式來代替:

CONFIG += mingw 

mingw { 
    //... 
} else { 
    //... 
} 

編輯:

你可以嘗試的另一件事是具備的條件和左花括號在同一行中,如果我記得沒錯的話,那在過去就造成了一些問題。

隨後的聲明是這樣的:

contains(MY_COMPILER, mingw) { 
    //... 
} else { 
    //... 
} 
+0

這種衝突與其他的東西。我不想混亂CONFIG變量。當我使用它,它給了我資源文件的問題(我甚至嘗試更改變量名稱,但沒有用)。它真的很奇怪...! – Sam 2012-03-27 19:18:48

+0

我添加了另一個建議你可以嘗試... – niktehpui 2012-03-27 19:39:50