gdb交叉编译到arm开发板

来源:互联网 发布:白额高脚蛛淘宝 编辑:程序博客网 时间:2024/05/17 06:10

前言
最近手头上的项目出现bug,出现偶尔崩溃现象,而且是随机出现感觉bug如幽灵般无迹可寻。无奈之下只能搬出gdb调试大法,那么问题来了,在嵌入式arm板上一切都是空白的,几乎所有的工具软件都得自己编译移植到arm板子上。在经过一番折腾之后终于将gdb成功的放到板子上运行。过程是辛苦的,结果是欣喜的,遂在此记下移植过程,仅供学习参考。

工具、开发环境简介
1、pc系统:ubuntu12.04
2、arm系统:smart210+linux2.6.4
3、交叉编译工具:arm-none-linux-gnueabi-gcc-4.5.1
4、gdb版本:gdb7.6.2
gdb下载地址:http://ftp.gnu.org/gnu/gdb/

移植步骤
1、下载gdb7.6.2.tar.gz ,并放到合适的路径下,我将其放到/usr
解压文件: sudo tar -xvf gdb7.6.2.tar.gz
新建文件夹用于存放编译生成的gdb文件:sduo mkdir arm-linux-gdb
2、配置初始化gdb
2.1、配置编译工具环境变量:export PATH=$PATH:=/usr/local/4.5.1/bin
(设置下交叉编译工具的路径,防止编译时找不到编译器,具体路径要具体改)
2.2、配置初始化gdb,生成Makefile文件
sudo ./configure –host=arm-none-linux-gnueabi –target=arm-none-linux-gnueabi –enable-shared –prefix=/usr/arm-linux-gdb –without-x –disable-gdbtk –disable-tui –without-included-regex –without-included-gettext
注:关于上面的参数不明白的可以通过:sudo ./configure –help 命令来详细的查看,再次不再赘述。
2.3、修改Makefile文件,进行交叉编译
由于生成的Makefile文件里关于交叉编译工具的参数不对,需要手动来修改一下。
sudo chmod 777 Makefile
sudo vim Makefile +356
将Makefile修改为:
这里写图片描述
sudo make -j4
等待编译完成后执行:
sudo make install
然后切换到安装路径:
cd /usr/arm-linux-gdb
在该路径下可以看到生成的gdb工具
如果生成的gdb文件太大,可以做如下处理:
sudo arm-linux-strip gdb
这样处理后文件的大小可以变小很多。
将生成的gdb工具放到arm板子上就可以开始调试程序了,至此交叉编译gdb告一段落。
参考文章:http://blog.sina.com.cn/s/blog_7c95e5850100u7d2.html