手动编译GDB

手动编译GDB

起因在于使用Clang-14编译C++文件并生成调试信息,使用gdb调试时报DWARF相关错误。经检查原因在于虚拟机为Ubuntu 20.04,使用apt下载时官方提供gdb版本为9.2,不支持DWARF5,而Clang-14生成的调试信息是DWARF5版本的。为解决该问题,手动编译gdb-11.2。

下载gdb

官网下载tar包,并解压。

安装

配置参数

tui模式支持

  1. 在执行./configure指定--enable-tui。
  2. 安装libcurses
shell 复制代码
sudo apt-get install libncurses5-dev libncursesw5-dev

python脚本支持

  1. 在执行./configure指定--with-python[=python],它可以是 Python 可执行文件的名称,也可以是 Python 安装目录的名称,例如:/usr/bin/python3.8
  2. 如果提示找不到python,尝试安装python3.8-dev
shell 复制代码
sudo apt install python[version]-dev

完整流程

shell 复制代码
cd gdb-11.2
mkdir build;cd build
../configure --enable-tui --with-python=/usr/bin/python3.8
make
sudo make install
相关推荐
Lucis__11 天前
版本控制器git及gdb调试技巧深度剖析
git·gdb·开发工具
彭泽布衣1 个月前
gdb调试方法总结
linux·c语言·gdb·故障排查·段错误
我是标同学2 个月前
gdb的自定义脚本写法
gdb·嵌入式调试
Lenyiin2 个月前
《 Linux 修炼全景指南: 八 》别再碎片化学习!掌控 Linux 开发工具链:gcc、g++、GDB、Bash、Python 与工程化实践
linux·python·bash·gdb·gcc·g++·lenyiin
kali-Myon2 个月前
快速解决 Docker 环境中无法打开 gdb 调试窗口以及 tmux 中无法滚动页面内容和无法选中复制的问题
运维·安全·docker·容器·gdb·pwn·tmux
赖small强3 个月前
【Linux C/C++开发】 GCC -g 调试参数深度解析与最佳实践
linux·c语言·c++·gdb·-g
ベadvance courageouslyミ3 个月前
GDB相关操作
gdb
我在人间贩卖青春3 个月前
GDB调试方法及命令
gdb·调试·gdb调试
代码AC不AC3 个月前
【Linux】调试器 gdb / cgdb
linux·gdb·调试器·cgdb
岚天start4 个月前
Linux内核coredump分析方案
linux·运维·服务器·gdb·coredump·堆栈·内存快照