2009-08-19 50 views
6

當我在Ubuntu上構建Qt應用程序時,它會將輸出文件放在主解決方案文件夾中,而不像發佈/調試文件夾那樣放在Windows上。Qt不會在Linux中的調試/發佈文件夾中創建輸出文件

這是有問題的,因爲有時輸出文件需要作爲構建過程的一部分運行(例如運行單元測試)。

我有一個想法,這與qmake.conf文件有關,但我不確定該怎麼做。

所以我的問題是:

  1. 爲什麼會出現這種差異存在(它可能只是我嗎?)
  2. 我應該怎樣去確保我的應用程序將正確地建立在Windows和Ubuntu的?

回答

6

我假設你使用qmake來做實際建築。爲了

# only for unix: 
unix { 
    # in debug mode... 
    CONFIG(debug, debug|release) { 
     DESTDIR = debug 
    } 
    else { 
     DESTDIR = release 
    } 
} 

顯然,這個工作你需要構建調試版本和發佈的可執行文件:您可以編輯的項目文件放置在不同的目錄輸出這樣的。關於這個主題的更多信息,可以發現here

乾杯

+0

這適用於OSX也以「mac」作爲條件。使用OSX時,YourProgram.app文件夾將直接放置在「debug」或「release」目錄下,而實際的可執行文件將放置在YourProgram.app/Contents/MacOS的較低位置。 – 2011-03-05 02:30:07

6

CONFIG變量debug_and_releasedebug_and_release_target在Windows上設置,但不能在Linux上。所以下面的線將確保您的構建將在Linux和Windows一樣的:

CONFIG *= debug_and_release debug_and_release_target 

documentation不久提到它。文件/usr/share/qt4/mkspecs/win32-g++/qmake.conf將其添加到CONFIG

+0

明天要測試這個。我希望這擺脫冗餘調試/釋放文件夾窗口 – 2015-09-25 03:15:47

相關問題