当前位置: 首页 > article >正文

手动编译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
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
sudo apt install python[version]-dev

完整流程

cd gdb-11.2
mkdir build;cd build
../configure --enable-tui --with-python=/usr/bin/python3.8
make
sudo make install

http://www.kler.cn/a/132724.html

相关文章:

  • 构建SSH僵尸网络
  • 面试经典 150 题:20、2、228、122
  • 【不写for循环】玩玩行列
  • 树的直径计算:算法详解与实现
  • 如何在 SQL Server 中新增账户并指定数据库权限
  • C++builder中的人工智能(27):如何将 GPT-3 API 集成到 C++ 中
  • 使用CXF调用WSDL(二)
  • ascii 码对照表
  • LeetCode704.二分查找及二分法
  • Filter和ThreadLocal结合存储用户id信息
  • 傅里叶分析(2)
  • elementui 实现树形控件单选
  • 哈希
  • 解决Redis分布式锁宕机出现不可靠问题-zookeeper分布式锁
  • kubernetes|云原生| 如何优雅的重启和更新pod---pod生命周期管理实务
  • QGIS003:【05高级数字化工具栏】-要素移动、修改、合并操作
  • Hadoop学习总结(MapRdeuce的词频统计)
  • 【原创】java+swing+mysql鲜花购物商城设计与实现
  • ATTCK实战系列——红队实战(一)
  • Alibaba Nacos注册中心源码剖析
  • 6.6.比例尺图层(ScaleBarOverlay)
  • Django框架之模型层(一)
  • 2023.11.17-hive调优的常见方式
  • nodeJs基础笔记
  • 自定义vtkActor动画场景及事件_vtkAnimationScene
  • Feature Pyramid Networks for Object Detection(2017.4)