zoukankan      html  css  js  c++  java
  • QT在release版本产生pdb文件


    ##环境说明

    QtCreatorQtLibrary编译器
    Qt Creator 2.7.0 4.8.4-msvc msvc9.0(VS2008)

    ##背景说明

    项目中需要对发布版本追踪崩溃问题,我们在项目中利用Qtbreakpoint来产生崩溃文件*.dump文件,但是若是想要对应的定位崩溃点还需要对应的 *.pdb 文件,但是在Qt的Release版本下默认是不产生*.pdb文件

    ##如何配置

    • 方案1 修改编译环境,对所有项目的release都产生*.pdb文件,步骤如下:
      1. 找到编译器对应的配置文件,如我的系统安装的是VS2008则我需要找Qt的安装目录/4.8.4/mkspecswin32-msvc2008qmake.conf
      1. 增加如下两行配置项到文件并保存

    sh QMAKE_CFLAGS_RELEASE = -O2 -MD -Zi QMAKE_LFLAGS_RELEASE = /INCREMENTAL:NO /DEBUG

    • 保存后重启Qtcreator或者直接重新新编译
    • 缺陷是编译后的PDB文件不能自己修改名字和拷贝到二进制所在的目录

    • 方案2 修改程序的工程文件 *.pro ,增加如下: *

    sh QMAKE_LFLAGS_RELEASE += /MAP QMAKE_CFLAGS_RELEASE += /Zi QMAKE_LFLAGS_RELEASE += /debug /opt:ref 
    建议使用此种方式

    http://daodaoliang.com/blog/2014/10/30/Qt-msvc%E7%BC%96%E8%AF%91%E5%99%A8%E5%A6%82%E4%BD%95%E5%9C%A8Release%E4%B8%8B%E4%BA%A7%E7%94%9Fpdb%E6%96%87%E4%BB%B6.html

  • 相关阅读:
    数字建模工具
    博客园文档保存为pdf适合手机kindle阅读
    单点登录sso规范
    office在线预览方案
    KVM 虚机怎么热添加disk
    linux-基础FTP 协议传输
    TCP 三次握手四次挥手
    autossh 实现反向代理实现通过外网访问内网环境
    keepalived的工作原理
    openstack-ovs命令记录
  • 原文地址:https://www.cnblogs.com/findumars/p/6272226.html
Copyright © 2011-2022 走看看