使用GDB attach远程进程时提示无法打开读取文件,如何禁用该提示
GDB attach远程进程时禁用缺失文件报错提示的解决方案
这个报错是GDB默认尝试加载远程进程关联的源文件、动态库符号文件时,在本地搜索路径中找不到对应路径文件触发的提示,可以通过以下方式禁用:
临时生效(仅当前GDB会话可用)
在GDB交互界面输入以下命令即可立即关闭提示:
- 适用于GDB 8.0及以上版本(仅关闭文件缺失类警告,不影响其他警告输出)
set print object-file-not-found off - 适用于更低版本GDB(全局关闭所有GDB警告)
set warning off
永久生效
编辑当前用户根目录下的.gdbinit配置文件,添加对应命令,后续所有GDB会话启动时会自动加载配置:
# 关闭找不到目标文件的警告提示 set print object-file-not-found off # 可选:禁止自动加载本地不存在的符号文件,进一步减少无关提示 set auto-load symbols off
启动GDB时直接禁用
可以在启动GDB的命令中直接附加配置,无需后续手动输入:gdb -ex "set print object-file-not-found off" -ex "attach <目标进程PID>"
注意:以上操作仅屏蔽无关提示,不会影响远程调试的核心功能。如果后续需要加载本地源文件进行源码级调试,可以配置
set substitute-path [远程文件根路径] [本地文件根路径]完成路径映射,即可正常读取源文件。
内容的提问来源于stack exchange,提问作者钟离默
相关产品推荐
相关产品推荐

