2010-04-13 61 views
9

qmake允許通過這樣的命令行界面來提供一個變量:qmake:如何通過命令行提供多個變量?

qmake "CONFIG += release" "MY_VAR = hello" 

因此,我可以使用$$MY_VAR一個.pro文件內。但是有可能以這種方式支持多個變量嗎?我試過

qmake "CONFIG += release" "MY_VAR = hello" "MY_ANOTHER_VAR = hi" 

但它沒有工作(引發錯誤)。任何提示?

回答

15

問題是誤導。您可以提供任意數量的變量。

.pro文件:

 
.... 
message($$VAR1) 
message($$VAR2) 

QMAKE運行:

 
qmake ... "VAR1=VALUE1" "VAR2=VALUE2" 

編譯器輸出:


09:40:13: Running build steps for project test... 
09:40:13: Starting: "c:\qtsdk\desktop\qt\4.8.1\mingw\bin\qmake.exe" D:\tmp\test\test.pro -r -spec win32-g++ "CONFIG+=declarative_debug" "VAR1=VALUE1" "VAR2=VALUE2" 
Project MESSAGE: VALUE1 
Project MESSAGE: VALUE2 
Project MESSAGE: VALUE1 
Project MESSAGE: VALUE2 
Project MESSAGE: VALUE1 
Project MESSAGE: VALUE2 
09:40:14: The process "c:\qtsdk\desktop\qt\4.8.1\mingw\bin\qmake.exe" exited normally. 
6

qmake可以通過$$()語法訪問環境變量(內部變量可以用$${}語法訪問)。這可以用來將任意數量的變量傳遞給qmake。