Qt开发应用程序Debug与Release设置

来源:互联网 发布:网络教育文凭毕业证 编辑:程序博客网 时间:2024/05/21 20:23

一般来说,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

原创粉丝点击