2013-04-02 49 views
2

我有一個腳本,runScript.sh,我想運行(設置一些環境變量等)之前,使應用程序。Qt:運行腳本之前使

運用Running a program/script from QMake的意見,在我的.pro文件,我在第一行,

QMAKE_POST_LINK += ./runScript.sh 

將,在make,編譯和鏈接我的應用程序,然後運行該腳本。

我在.pro文件中見過how to set the script up as a target的例子,但我不確定我是否完全理解這個概念。有人可以更好地解釋它或(更好)有人知道如何做我想做的更簡單(我希望有一個「QMAKE_PRE_LINK」,但似乎不存在大聲笑)?

使用Qt-4.8.4 & qmake的2.03

回答

2

你張貼的鏈接解釋得很好。

extralib.target = extra 
extralib.commands = echo "Building extralib.."; \ # Run your programs here 
       make -w -C ../my_libraries/extralib; \ 
       echo "Done building extralib."; \ 

extralib.depends = 
QMAKE_EXTRA_TARGETS += extralib 
PRE_TARGETDEPS = extra 

所以,這可能只是被改寫爲

extralib.target = extra 
    extralib.commands = echo "Setuping the envirovment.."; \ 
          export MYVAR="/usr/src/whatever" \ 
          export SECONDVAR="/home/user" \ 
          ./runScript.sh 

    extralib.depends = 



    QMAKE_EXTRA_TARGETS += extralib 
    PRE_TARGETDEPS = extra 
+0

所以,'extra'是目標 - 啊哈!像在makefile中聲明'.PHONY'?那麼什麼是'extralib' - 它是否像一個環境變量? – redhotspike

+0

最終,我可以重命名'extralib'還是一個保留關鍵字? – redhotspike

+0

我在這裏沒有自己的編譯器,但是AFAIK,它不是一個保留關鍵字,所以你可以在'QMAKE_EXTRA_TARGETS + = extralib anotherextralib'中添加多於一個...... –

相關問題