1. 下载gdb源码
国内从官网下载源码比较慢,可以从清华的镜像网站(清华大学开源软件镜像站 | Tsinghua Open Source Mirror)上下载。下载地址:
Index of /gnu/gdb/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
选择想要的版本即可。
2. 下载交叉编译工具
bash
sudo apt install gcc-arm-linux-gnueabi
sudo apt install g++-arm-linux-gnueabi
sudo apt install gcc-aarch64-linux-gnu
sudo apt install g++-aarch64-linux-gnu
3. 搭建编译环境
将下载好的gdb-xxx.tar.gz上传到Linux编译环境上对应目录,进行解压
bash
tar -zxvf gdb-xxx.tar.gz
解压后进入gdb目录,并创建build目录
bash
cd gdb-xxx
mkdir build
然后在build目录下生成编译gdb的Makefile文件
bash
cd build
CC="/usr/bin/arm-linux-gnueabi-gcc" CXX="/usr/bin/arm-linux-gnueabi-g++" ../configure LDFLAGS=-static --prefix=$HOME/glib^C2-2.6 -target=arm-linux-gnueabi --host=arm-linux-gnueabi
其中:
CC/CXX为gcc/g++交叉编译工具的路径,使用apt install安装后,默认在/usr/bin目录,可以使用which gcc/which g++命令查询具体路径。
执行完以上命令后,会在build目录下生成gdb的Makefile文件。然后执行make命令进行编译即可。编译好的二进制文件保存在build/gdb目录下。
4. 推送gdb文件到目标设备
使用hdc连接设备,执行如下命令推送gdb到设备上:
bash
hdc shell mount -o remount,rw /
hdc file send gdb /bin/
chmod +x /bin/gdb
hdc shell mount -o remount,rw /
5. 使用gdb调试应用
以上步骤执行成功后,就可以在openHarmony设备上使用gdb调试程序了。