Qt開發應用程序Debug與Release設置

    一般來說,release版的可執行程序在體積上比起debug版要小很多(數倍甚至數十倍的差異),而且由於剝離了許多調試信息及符號等運行效率相對也高一些。然而在使用Qt開發中偶爾也會遇到及時選擇了release版生成的二進制文件仍然很龐大的問題。所以要仔細檢查一下相關設置,保證最後發佈出去的版本是release版。


1、前提: 在生成Qt庫時(./configure)已經配置爲  + -debug-and-release

    如果配置爲./configure -release,則只能生成release版


附簡單配置說明如下

-release ........... 調試關閉.沒有調試庫,自己的項目只能發佈,不能調試(沒有調試庫的緣故),如果你硬要編譯debug版本的話,會提示找不到xxxxxd.dll

* -debug ............. 只有調試庫,沒有釋放庫,也就是說以後自己的項目只能調試,如果你硬要編譯debug版本的話,會提示找不到xxxxx.dll

+ -debug-and-release . 編譯後包含兩種庫。最好編譯兩種庫

2、Qt Createor設置

    在creator的Projects選項卡中,構建設置(Build Settings),如果缺少了Debug或者Release,點擊其中的Add選擇對應的QtSDK版本即可。

    在Build Steps中qmake步驟,如果是Debug則需加上參數:CONFIG+=debug。

3、pro文件(可選)

注意:如果在Qt Creator設置了構建參數,pro文件就不必重複設置。

CONFIG+=debug_and_release

CONFIG(debug,debug|release)

{

unix:TARGET=$$join(TARGET,,,_debug)

win32:TARGET=$$join(TARGET,,d)

}

make 或make debug -------debug版

make release          -------release版

make all                 -------兩個版本都生成

生成Makefile中有QT_NO_DEBUG參數


4、屏蔽release版本中所有QDebug()提示信息:

如果要在命令行輸出時不打出所有qdebug信息,可以在pro文件中添加DEFINES+=QT_NO_DEBUG_OUTPUT

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章