1. 从http://ftp.gnu.org/gnu/gdb/ 下载最新稳定版8.3,即gdb-8.3.tar.gz,解压缩;

2. 在gdb-8.3目录下,创建一个build.sh脚本文件,内容如下:

./configure \--prefix="$PWD/install" \--target=aarch64-himix100-linux \--host=aarch64-himix100-linux \--program-prefix=hisi-

3. 依次执行如下命令,注:make install时会显示一些install error可以忽略:

./build.sh
make -j8
make install

4. 执行完后会在当前install目录下生成bin, include, lib, share四个目录,每个目录的内容如下图所示:

5. 将install/bin/目录下的hisi-gdb拷贝到海思板子上,然后执行:$ ./hisi-gdb 结果如下:

6. 测试代码main.cpp如下:

#include <stdio.h>
#include <iostream>namespace {void func() {const char* p = "hello";delete p;
}} // namespaceint main()
{fprintf(stdout, "test start\n");func();fprintf(stdout, "test finish\n");
}

7. 执行如下命令,生成可执行文件main:

/opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin/aarch64-himix100-linux-g++ -g -o main main.cpp

8. 将可执行文件main拷贝到海思板子上,执行:$ ./main ,结果如下图所示:

9. 通过$ ulimit -c unlimited命令开启产生core文件,如上图所示;

10. 通过gdb core dump方法查看程序异常时的堆栈信息,执行:$ ./hisi-gdb main core,结果如下图所示:

海思3559A上编译GDB源码操作步骤及简单使用相关推荐

  1. 海思3559A上编译Valgrind源码操作步骤

    注:按照以下步骤可以在海思板子上正常编译valgrind源码并生成valgrind可执行文件,但可能还不能在海思板子上正常使用. 1. 从http://valgrind.org/downloads/? ...

  2. 海思3559A上编译LIVE555源码操作步骤

    1. 从http://www.live555.com/liveMedia/public/ 下载live.2019.06.28.tar.gz,并解压缩: 2. 生成静态库,拷贝一份config.arml ...

  3. 海思3559A上编译FFmpeg源码操作步骤

    1. 从https://github.com/FFmpeg/FFmpeg/releases 下载你需要的版本: 2. 因为ffmpeg编译选项较多,为了更方便的了解有哪些选项,可将编译选项写入到一个文 ...

  4. 海思3559A上编译libjpeg-turbo源码操作步骤

    1. 从https://github.com/libjpeg-turbo/libjpeg-turbo/releases/tag/2.0.2 下载libjpeg-turbo 2.0.2版本: 2. 脚本 ...

  5. 海思3559A上编译libyuv源码操作步骤

    1. 下载libyuv源代码,执行: git clone https://chromium.googlesource.com/libyuv/libyuv 2. 通过CMakeLists.txt编译生成 ...

  6. 海思3531D上编译FFmpeg源码操作步骤

    从https://github.com/FFmpeg/FFmpeg/releases 下载你需要的版本: 因为ffmpeg编译选项较多,为了更方便的了解有哪些选项,可将编译选项写入到一个文本文件con ...

  7. 在Windows和Linux上编译gRPC源码操作步骤(C++)

    gRPC最新发布版本为v1.23.0,下面以此版本为例说明在Windows和Linux下编译过程. Windows7/10 vs2103编译gRPC源码操作步骤: 1. 需要本机已安装Git.CMak ...

  8. Windows10上编译MXNet源码操作步骤(Python)

    1. 按照https://blog.csdn.net/fengbingchun/article/details/84997490  中操作步骤首先在Windows上通过VS2017编译MXNet源代码 ...

  9. 在Ubuntu14.04 64位上编译CMake源码操作步骤

    在Ubuntu上通过apt-get install安装CMake并不是最新版的,这里记录下在Ubuntu上通过源码安装CMake的操作步骤: 1.        卸载旧版CMake,执行以下命令: a ...

最新文章

  1. 如何安全地吃掉悬崖边上的苹果?DeepMindOpenAI给出3D版安全强化学习答案
  2. python学习笔记-5.18
  3. MySQL等级考试题目练习_全国计算机等级考试二级MySQL练习题
  4. sonar扫描android项目配置 mac版
  5. Java版本中最好用的网易云音乐、qq音乐api请求工具,你还在忙于如何使用java调音乐api?来看下这里的实现
  6. 「ds」网络操作系统和分布式操作系统之间的区别
  7. TypeScript(四)声明文件、全局变量(三斜线指令)、npm包、UMD库、发布声明文件
  8. 金融分析与风险管理——投资组合的绩效评估
  9. echart 三维可视化地图_ECharts实现三维可视化
  10. Debian 6(Squeeze)升级至Debian 7(Wheezy)
  11. 老版本 linux 浮点,Linux-浮点运算
  12. 【最新】Blender资产库纹理灯光 预设打光技巧
  13. vue项目,解决IE浏览器报Promise未定义的错误
  14. [BZOJ1271][BeijingWc2008][二分]秦腾与教学评估
  15. vue webpack打包名称设置
  16. Invalid header signature; read 0x3C0A0D0A0DBFBBEF, expected 0xE11AB1A1E011CFD0
  17. 看牛人如何学习JAVA-如何学习java
  18. 论文阅读三:GHM《Gradient Harmonized Single-stage Detector》
  19. 攻防世界——如来十三掌 give_you_flag
  20. PHP与MySQL连接菜鸟教程_PHP 连接 MySQL 数据库 | w3cschool菜鸟教程

热门文章

  1. OpenCV中的特征匹配+单应性以查找对象
  2. autoware使用相机和深度学习进行目标检测(六)
  3. C++中的双冒号(::)
  4. mysql怎么创建表视频教程_mySQL学习入门教程——2.创建表
  5. CloudCompare基础教程(1)-介绍
  6. c++11随机数产生器default_random_engine
  7. 设置Open in Terminal快捷键Alt+Shift+Z,方便angular项目的各种命令输入(多任务状态下)
  8. 2020考研 管理类联考数学 【题型分析及解题思路】
  9. QT 中使用 OpenCv 的 CascadeClassifier 报错
  10. 个人作业1:小学四则运算——基于控制台