开发环境 -- Linux下编译gdb工具

参考文章:
    http://qiusuoge.com/15831.html
    
c出错的时候:
    https://blog.csdn.net/bailyzheng/article/details/7488664
    
在对嵌入式进行调试之前,必须要生成调试器。经典地,Linux平台下的调试器为gdb。

1、下载gdb:
下载地址为:

http://www.gnu.org/software/gdb/download/

我们以gdb-8.3.tar.gz 这个文件为例。

2、解压缩:

tar -vxf gdb-8.3.tar.gz

注:小技巧:Linux下一般压缩文件后缀为.tar.bz2和.tar.gz,它们解压命令有两三个选项是一致的:
xf(v),前者再加上j选项,后者再加上z选项。

3、进入该目录:

cd gdb-8.3/

4、配置:

3536:
    CC=arm-hisiv400-linux-gcc ./configure --host=arm-hisiv400-linux --target=arm-hisiv400-linux --program-prefix=arm-hisiv400-linux- --prefix=/home1/zhugeyifan/tools/gdb/output/3536
3519:
    CC=arm-hisiv600-linux-gcc ./configure --host=arm-hisiv600-linux --target=arm-hisiv600-linux --program-prefix=arm-hisiv600-linux- --prefix=/home1/zhugeyifan/tools/gdb/output/3519a
3519av100:
    CC=arm-himix200-linux-gcc ./configure --host=arm-himix200-linux --target=arm-himix200-linux --program-prefix=arm-himix200-linux- --prefix=/home1/zhugeyifan/tools/gdb/output/3519av100
开发机:
    ./configure --prefix=/home1/zhugeyifan/tools/gdb/output/pc

编译参数说明:
1)    CC:编译gdb使用的交叉编译工具链,3536和3519的工具不一样
2)    --host:编译出来的gdb运行在什么机器上
3)    --target:要调试的目标板
4)    --program-prefix:编译生成可执行文件的前缀
5)    --prefix:make install的的位置

注:–target=arm-linux意思是说目标平台是运行于ARM体系结构的linux内核;–program-prefix=arm-linux-是指生成的可执行文件的前缀,比如arm-linux-gdb,–prefix是指生成的可执行文件安装在哪个目录,这个目录需要根据实际情况作选择。如果该目录不存在,会自动创建,当然,权限足够的话。
5、编译、安装

    make

    make install

注:在“make install”的时候可能会报错:“WARNING: 'makeinfo' is missing on your system.”。原因是因为当前环境中缺少“makeinfo”命令,安装一下就好了,如下

sudo apt-get install texinfo

幸运的话,会在–prefix指定的目录下生成三个子目录:bin、lib、share,我们需要的arm-linux-gdb就在其中的bin目录下。
在—prefix指定目录下生成arm-hisiv600-linux-gdb,同时还生成了arm-hisiv600-linux-gdbserver,因为gdb是直接运行在3519上,这里只关注arm-hisiv600-linux-gdb。

如果你不小心查看它的大小的话,会发觉它有14MB那么大!天呐!怎么会占这么多空间?没关系,我们可以为它瘦身。没错!就是使用strip命令!
3519av100:

arm-himix200-linux-strip arm-himix200-linux-gdb -o hi3519av100-gdb

猜你喜欢

转载自blog.csdn.net/Ivan804638781/article/details/100740787