在开发板上安装gdb

2023-05-16

网上对于在开发板上安装gdb的教程大多都是将开发板的文件系统放在虚拟机主机上,从而通过nfs挂载上去的,主要是针对性能较差开发板,本教程讲解的是如何在开发板上直接安装gdb。

为什么不能直接将pc上交叉编译器中的gdb文件移植过来呢:
因为交叉编译器上的gdb是针对pc上的x86架构编译得到的,而我们需要的是在arm64架构上得到的,这也就是将文件系统放在开发板上的第二个好处。

开发环境:debian10
使用的是瑞芯微的RK3399prod

首先我们要去官网上下载gdb源代码,下面是gdb源码地址:
https://ftp.gnu.org/gnu/gdb/

这里我下载的是最新的gdb-11.2.tar.gz
下载完成后输入指令:

tar -zvxf gdb-11.2.tar.gz

然后进入对应目录下,输入指令:

mkdir build
cd build
../configure --target=aarch64-linux-gnu --host=aarch64-linux-gnu --prefix=/usr/local/aarch64-gdb -v

然后执行编译

make -j4

遇到错误,缺少GMP文件
GMP is missing or unusable
解决方案如下:

apt-cache search GMP

找到相关联的软件,找到libgmp-dev

sudo apt-get install libgmp-dev

遇到错误:提示获取的404找不到

sudo apt-get update

出现inrelease字样,通过翻译知道应该是有冲突。

这里借鉴了如下的思路:下面是网址链接
网址链接

命令如下:

sudo apt-get clean
sudo mv /var/lib/apt/lists /tmp
sudo mkdir -p /var/lib/apt/lists/partial
sudo apt-get clean 
sudo apt-get update

然后再次更新,安装软件,提示成功
然后执行:

sudo make install

在/usr/local/aarch64-gdb/bin目录下得到gdb可执行文件
执行指令:

file gdb

得到:
aarch64-linux-gnu-gdb: ELF 64-bit LSB pie executable, ARM aarch64, version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=55593d5d37ed4376cab71a5b099c34b581ff490a, with debug_info, not stripped

这里得到gdb文件就是ARM64位啦。

mv gdb aarch64-linux-gnu-gdb
cp aarch64-linux-gnu-gdb /usr/bin

至此gdb移植完成

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在开发板上安装gdb 的相关文章

随机推荐