一、增加编译选项
二、使用gdbinit插件
如果你的程序依赖于libcxx,而不是libstdc++.so.6
配置~/.gdbinit
$ cat ~/.gdbinit
set print pretty on
set print object on
# libc++ pretty printers
# See: https://github.com/koutheir/libcxx-pretty-printers
python
import sys
sys.path.insert(0, '/home/koutheir/libcxx-pretty-printers/src')
from libcxx.v1.printers import register_libcxx_printers
register_libcxx_printers(None)
end
三、gdb原生
并不是很好用
info pretty-printer
enable pretty
disable pretty
四、通过编译选项解决
对应的可以调整cmake编译选项或者选择Debug类型进行编译;
最简单的方法可能是使用-fno-inline-functions或(甚至更好)-O0禁用函数内联进行编译。
-fno-inline-functions or (still better) -o0