TMS320DM8168下GDB远程调试环境的搭建
来源:互联网 发布:自定义动态壁纸软件 编辑:程序博客网 时间:2024/06/05 13:32
TMS320DM8168下GDB远程调试环境的搭建
(GDB的安装与配置与调试)
1、修改虚拟机ubuntu上面的环境变量(添加下面两行)
#vi /etc/bash.bashrc
export PATH="$PATH:/usr/local/arm-gdb/bin" #arm-gdb调试平台
export PATH="$PATH:/opt/DVRRDK_03.00.00.00/ti_tools/cgt_a8/arm-2009q1/bin/" #dm8168交叉编译平台
2、源码下载
下载地址:http://ftp.gnu.org/gnu/gdb/
选择版本:gdb-7.5.tar.gz(下载)
#tar jxvf gdb-7.5.tar.gz
#cd gdb-7.5
#./configure --target=arm-none-linux-gnueabi --prefix=/usr/local/arm-gdb –v
(--target配置gdb的目标平台,--prefix配置安装路径,当然其他路径也可以,须在环境变量中声明,启动arm-linux-gdb需要,可更改/etc/profile或~/.bash_profile或~ /.bashrc,添加export PATH=$PATH:/usr/local/arm-gdb/bin,这样可以找到路径)
3、修改程序
如果不修改会在调试出现“Remote 'g' packet reply is too long ”这个错误。
在/gdb-7.5/gdb/remote.c
if (buf_len > 2 * rsa->sizeof_g_packet)
error (_(“Remote ‘g’ packet reply is too long: %s”), rs->buf);
在修改为:
if (buf_len > 2 * rsa->sizeof_g_packet)
{
rsa->sizeof_g_packet = buf_len ;
for (i = 0; i < gdbarch_num_regs (gdbarch); i++)
{
if (rsa->regs[i].pnum == -1)
continue;
if (rsa->regs[i].offset >= rsa->sizeof_g_packet)
rsa->regs[i].in_g_packet = 0;
else
rsa->regs[i].in_g_packet = 1;
}
}
4、编译
#make
#make install
(生成arm-linux-gdb,并存入/usr/local/arm-gdb /bin/,查询确认下)
进入gdb/gdbserver目录:
cd gdb-7.5/gdb/gdbserver
[root@dding gdbserver]# 必须在gdbserver目录下运行配置命令,此时才能用相对路径
./configure --target=arm-none-linux-gnueabi --host=arm-linux
(--target=arm-none-linux-gnueabi表示目标平台,--host表示主机端运行的是arm-linux-gdb,不需要配置—prefix,因为gdbserver不在主机端安装运行)
#make CC=/opt/DVRRDK_03.00.00.00/ti_tools/cgt_a8/arm-2009q1/bin/arm-none-linux-gnueabi-gcc
(这一步要指定你自己的arm-none-linux-gnueabi的绝对位置,我试过相对的不行,提示make: arm-linux-gcc: Command not found,可好多人都用的相对路径,即直接赋值arm-linux-gcc,可采取make时传递参数,也可以直接修改gdbserver目录下的 Makefile文件中的环境变量CC)
5、调试
在开发板上面运行下面命令
./gdbserver 192.168.1.89:7893 test_8168
gdbserver为虚拟器中gdb-7.5/gdb/gdbserver生成的文件,192.168.1.89为虚拟机的IP地址,7893为端口号,test_8168为带-g编译的二进制程序
在虚拟机上运行
#arm-none-linux-gnueabi-gdb test_8168
启动后再连接开发板
target remote 192.168.1.77:7893
其中192.168.1.77为开发板IP地址,7893为端口号。
就可以开始进行调试了。
原文:http://hi.baidu.com/285988185/item/33cc0e047be026e6fe240d4c
- TMS320DM8168下GDB远程调试环境的搭建
- GDB远程调试(一)之DM8168下gdb远程调试环境的搭建
- GDB远程调试(一)之DM8168下gdb远程调试环境的搭建
- 搭建gdb调试环境
- arm-linux-gdb+gdbserver环境搭建以及远程调试
- arm-linux-gdb+gdbserver环境搭建以及远程调试
- arm 嵌入式下的 gdb 远程调试
- linux下的GDB远程调试
- 基于GDB的交叉调试环境搭建
- 嵌入式环境下的gdb调试方法
- linux环境下的GDB调试
- Android环境下的GDB调试
- android下远程GDB调试
- Windows下gdb调试Android程序环境搭建
- 纯Linux下的 ARM裸机调试环境搭建(GDB + JLink)
- 纯Linux下的 ARM裸机调试环境搭建(GDB + JLink)
- 纯Linux下的 ARM裸机调试环境搭建(GDB + JLink)
- (转载)纯Linux下的 ARM裸机调试环境搭建(GDB + JLink)
- listview如果添加的有Headview和Footview,onItemClick数值异常
- Trapping Rain Water
- java--URL
- 图的表示
- 采样定理说的是什么?
- TMS320DM8168下GDB远程调试环境的搭建
- VS2010静态编译生成.exe可执行文件
- JDK 8 新特性
- HDU 1013(数学?数串)
- HDU 1384 Intervals
- 图的表示——邻接矩阵
- 第三方集成之webservice教程(详细讲述)
- 一步步学习数据结构和算法之快速排序效率分析及java实现
- 杭电1321