如何为GDB的list命令设置euc-jp源编码?
解决GDB调试EUC-JP编码源码的显示问题
直接设置GDB字符集:
set target-wide-charset不识别小写的euc-jp,试试大写的标准名称EUC-JP,或者用它的字符集编号20932:set target-wide-charset EUC-JP # 或者用编号 set target-wide-charset 20932临时转码源码调试:如果GDB还是不生效,先把源码转成UTF-8再调试,不改动原文件:
# 复制并转码单个文件 cp KXLvisual.c KXLvisual_utf8.c iconv -f EUC-JP -t UTF-8 KXLvisual.c > KXLvisual_utf8.c # 启动GDB时指定转码后的文件替换原文件 gdb -ex "set substitute-path ./KXLvisual.c ./KXLvisual_utf8.c" ./geki2调试完删掉转码后的文件即可,批量处理的话可以写个简单脚本循环处理所有EUC-JP编码的源码。
适配终端编码:先把Konsole的编码改成EUC-JP——打开Konsole设置→编辑当前配置文件→外观→编码,选
EUC-JP,再设置环境变量:export LC_ALL=ja_JP.EUC-JP export LANG=ja_JP.EUC-JP重启Konsole再开GDB,大概率能正常显示日文注释。
永久配置GDB:把编码设置写入
~/.gdbinit,每次启动自动生效:echo "set target-wide-charset EUC-JP" >> ~/.gdbinit要是
EUC-JP不行,就换成20932。
内容的提问来源于stack exchange,提问作者Nathan Mills
相关产品推荐
相关产品推荐

