在openharmony上,armv7版本的gdb编译

本文讲述了在OpenHarmony4.0及以上版本中,使用gdb8.2版本遇到的DWARF格式问题,涉及arm编译环境的工具链下载、配置及编译gdb的过程,特别提到需要root权限和config.h文件路径设置的问题。
摘要由CSDN通过智能技术生成

在此记录一下,rk3568上gdb版本的编译问题,gdb的8.2版本,在openharmony4.0以后的版本,提示dwarf格式有问题,看不到调试信息。

1、arm下编译工具下载:

wget https://releases.linaro.org/components/toolchain/binaries/latest-5/arm-linux-gnueabi/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi.tar.xz

下载后解压目录xxx

2、gdb10.0以后的版本

下载地址:ftp://ftp.gnu.org/gnu/gdb

下载所用的版本为gdb-10.2.tar.xz,随手下载10.0以后的版本,没有过多考虑。

下载后解压,然后在代码同级目录下,新建文件夹build,只是为了把编译的数据和原始代码分开,方便出问题,清除目录再编译

3、在build下,执行配置

../configure LDFLAGS=-static --prefix=/xxxx/gdbinstall -target=arm-linux-gnueabi --host=arm-linux-gnueabi CFLAGS="-O3 " LDFLAGS="-static -O3" CC="xxx/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc" CXX="xxx/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-g++" AS="xxx/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-as" AR="xxx/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-ar"

其中xxx为arm编译工具的解压目录,另外在把编译工具的bin目录放到path里面

在home目录.bashrc文件最后加一句,export PATH=$PATH:xxx//gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/bin

4、编译gdb

sudo su  切换为root用户

source  /home/yyy/.bashrc   把编译工具bin目录加入到PATH里面

make  -j8    等待编译成功

不确定为什么gdb编译一定要root用户,把gdb的源码目录已经设置为777,还会提示config.h找不到,在配置生成的日志里面,看到提示config.h已经生成,且没有改变,但本地却找不到config.h文件,令人抓狂。。。

5、附注:

编译之前,需要把编译相关的软件安装好,当然,这并不是必须的。

sudo apt-get update && sudo apt-get install binutils git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev lib32z1-dev  libxml2-utils xsltproc unzip m4 bc gnutls-bin  ruby

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值