You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Qt Creator中force_debug_info与separate_debug_info构建选项相关问题

Qt 分离调试符号配置常见问题解答

符号文件后缀

不同平台下后缀规则不同:

  • Linux 平台:默认后缀为 .debug,符合预期格式
  • Windows 平台:生成标准 .pdb 调试符号文件
  • macOS 平台:生成 .dSYM 格式的符号 bundle

符号文件存放目录

默认生成路径与最终输出的可执行文件/二进制库同目录,如果你开启了Qt Creator的影子构建功能,文件会落在影子构建的输出目录下,和不带符号的二进制文件放在同一级。

未生成符号文件的排查方案

如果没有观测到对应符号文件,按以下优先级排查:

  • 确认qmake配置参数正确添加,需要在.pro文件中加入以下配置:
    # 保留调试信息编译参数
    QMAKE_CFLAGS += -g
    QMAKE_CXXFLAGS += -g
    # 开启强制生成调试信息+分离符号配置
    CONFIG += force_debug_info separate_debug_info
    
    注意不要额外添加CONFIG += release_with_debug_info,该配置会把符号直接嵌入二进制文件,不会生成分离的符号文件。
  • 确认项目没有额外strip操作:部分自定义构建脚本会在构建完成后自动对二进制执行strip操作,会同时删除分离好的符号文件,检查Qt Creator构建步骤中的自定义执行脚本即可。
  • 不要使用纯CONFIG += release配置:纯release配置会默认剔除所有调试相关编译参数,会覆盖你添加的force_debug_info配置,只需要在默认release配置基础上额外添加上述参数即可,不会引入debug配置的体积膨胀问题,生成的无符号二进制体积和普通release版本一致。

GDB加载符号调试coredump说明

gdb默认会自动读取和可执行文件同目录下的.debug后缀符号文件,直接执行gdb 你的可执行文件路径 core文件路径即可自动加载符号完成调试。如果符号文件放在其他目录,可以在gdb交互界面执行set debug-file-directory 符号文件所在目录手动指定加载路径。


内容的提问来源于stack exchange,提问作者Raghav Navada

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 20:06:05