gdb 移植

Gdb下载地址:

http://ftp.gnu.org/gnu/gdb/

termcap下载地址:
http://ftp.gnu.org/gnu/termcap/
tar -zxvf termcap-1.3.1.tar.gz

对于ubuntu系统安装命令:

sudo apt-get install texinfo

sudo apt-get install libncurses5-dev

sudo apt-get install m4

sudo apt-get install flex

sudo apt-get install bison

1.编译termcap-1.3.1
a)./configure --host=arm-hisiv500-linux --prefix=/home/luxin/gdb/gdb-7.6/install --without-ada --enable-termcap --with-shared
若是其他例如mips平台,则–host=mipsel-linux
b) make
c) make install
2.编译gdb-7.6
a)./configure --host=arm-hisiv500-linux --enable-shared --prefix=/home/luxin/gdb/gdb-7.6/install --without-x --disable-gdbtk --disable-tui --without-included-regex ––without-included-gettext LDFLAGS="-L/home/luxin/gdb/gdb-7.6/install" CPPFLAGS="-I/home/luxin/gdb/gdb-7.6/install"

若是其他例如mips平台,则–host=mipsel-linux
b) make
c) make install
d) 在gdb-7.6\gdb下可以找到gdb可执行程序,在gdb-7.6\gdb\gdbserver下可以找到gdbserver可执行程序,
将该gdb命令命名为arm-linux-gdb gdbserver命名为arm-linux-gdbserver

3、gdb交叉版本使用
设备IP:192.168.1.110
PCIP:192.168.1.5
a)设备端
./arm-linux-gdbserver 192.168.1.110:1234 hello

一.GDB常用命令命令介绍:

gdb>list //列出源码,默认源码文件和执行文件同路径

gdb><回车> //重复上次命令

gdb>break 10 //在第十行下断点

gdb>break func //在函数func入口下断点

gdb>info break //查看断点信息

gdb>info args //打印当前函数参数名和值

gdb>info locals //打印当前函数所有局部变量和值

gdb>disassemblefunc //查看函数func的汇编代码

gdb>run //运行程序

gdb>next //单条语句执行

gdb>n //等同next

gdb>continue //继续运行

gdb>p i //打印变量值,等同于print

gdb>bt //查看函数堆栈

gdb>shell //执行shell命令

gdb>clear //清除断点,相关命令有delete/disable/enable

gdb>step //单步运行

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Linux 上编译交叉编译工具链和 GDB 服务器需要以下步骤: 1. 安装交叉编译工具链。可以从交叉编译工具链提供商处下载,也可以自己编译。 2. 下载 GDB 源代码。可以从 GDB 官网下载。 3. 解压 GDB 源代码。 4. 进入 GDB 源代码目录,执行以下命令: ``` ./configure --target=arm-linux-gnueabi --with-gdbserver make ``` 这将编译出 arm-linux-gnueabi-gdb 和 arm-linux-gnueabi-gdbserver。 5. 将编译好的 arm-linux-gnueabi-gdb 和 arm-linux-gnueabi-gdbserver 移植到开发板上。可以使用 scp 命令将它们传输到开发板的某个目录下。 6. 在开发板上启动 GDB 服务器。可以执行以下命令: ``` ./arm-linux-gnueabi-gdbserver :<port> <executable> ``` 其中,`<port>` 是 GDB 服务器监听的端口号,`<executable>` 是要调试的可执行文件的路径。 7. 在主机上启动 GDB。可以执行以下命令: ``` ./arm-linux-gnueabi-gdb <executable> ``` 这将启动 GDB,并连接到开发板上运行的 GDB 服务器。 8. 在 GDB 中进行调试。可以使用 GDB 提供的命令进行断点设置、变量查看、单步执行等操作,以进行程序调试。 注意事项: - 在编译 GDB 时需要指定目标平台为 arm-linux-gnueabi,以生成适用于 ARM 架构的 GDB。 - 在启动 GDB 服务器时需要指定可执行文件的路径,否则 GDB 无法进行调试。 - 在启动 GDB 时需要指定可执行文件的路径,以便 GDB 能够加载符号表和调试信息。 - 在进行调试时需要注意调试信息与可执行文件的版本是否匹配,否则可能会导致调试信息不准确或者无法调试。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值