arm单板上移植gdb
虚拟机 : vmware 12
image: ubuntukylin 14.04.1
系统版本:Linux dancy 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:12 UTC 2014 i686 i686 i686 GNU/Linux
虚拟机安装好之后,安装一下基本的工具环境
sudo apt-get update
sudo apt-get install build-essential
arm交叉编译工具链: arm-none-linux-gnueabi , 下载地址 http://www.veryarm.com/cross-tools ,选择 2012.09 月的版本
gdb 源码下载地址: http://ftp.gnu.org/gnu/gdb/
我下载了 gdb-7.4.1.tar.bz2 ,解压进入代码目录:
./configure --host=arm-none-linux-gnueabi
貌似很正常,开始make
然而过了一会,就会出现
configure: WARNING: no enhanced curses library found; disabling TUI
checking for library containing tgetent... no
configure: error: no termcap library found
网上找了很多方法,都不管用
比如安装ncurses库: sudo apt-get install libncurses5-dev, 装了也没用
比如下载 termcap-1.3.1.tar.gz 编译 放入到 工具链的 /lib目录,比如 /home/arm-2012.09/arm-none-linux-gnueabi/lib 也是没用的,于是我仔细的想上面的错误信息,在configure的过程里,应该首先是使用ncurses库,没找到呢,也不会继续找termcap库,所以
下载 ncurses-5.5-tar.gz 编译安装如下,这个问题总算解决了。
下载地址: http://ftp.gnu.org/gnu/ncurses/
./configure --host=arm-none-linux-gnueabi --prefix=/home/arm-2012.09/arm-none-linux-gnueabi
make
make install
这个时候,再去make gdb就不会出上面的错误了,然而事情并不会那么简单,后面会继续出现新的问题。
In file included from arm-linux-nat.c:25:0:
linux-nat.h:79:18: error: field 'siginfo' has incomplete type
arm-linux-nat.c: In function 'arm_linux_stopped_data_address':
arm-linux-nat.c:1141:23: error: dereferencing pointer to incomplete type
arm-linux-nat.c:1144:16: error: dereferencing pointer to incomplete type
arm-linux-nat.c:1145:20: error: dereferencing pointer to incomplete type
arm-linux-nat.c:1157:46: error: dereferencing pointer to incomplete type
这里应该是源码跟linux系统的头文件匹配不上啦,有人建议修改这个siginfo为siginfo_t这个结构体,但是我觉得没必要去修改了,直接下载了 gdb-7.6.1.tar.gz 编译OK
编译命令:
./configure --host=arm-none-linux-gnueabi
make
make install
然后在源码的gdb目录就可以看到gdb可执行文件:
dancy@dancy:~/downloads/gdb-7.6.1/gdb$ file gdb
gdb: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, not stripped
arm单板上移植gdb的更多相关文章
- zedboard上移植OPENCV库
zedboard上移植OPENCV库 之前做了很多移植OPENCV库的工作,但是需要包含的各种库,需要交叉编译,X264 ,JPGE ,FFMPGE等等 注意:在<嵌入式系统软硬件协同设计实战指 ...
- 在HI3531上移植和运行QT4.8.6
在HI3531上移植和运行QT4.8.6 1. 前言: 近段有点时间,想把QT移植到HI3531上,在网上查找了很多资料,但都不是很全面,有些有问题也没有得到很好的体现. 2. ...
- I.mx6s上移植wm8960驱动(基于linux3.0.101版本)
I.mx6s上移植wm8960驱动 此篇博文只记录移植的步骤,其他不做分析.首先上一张wm8960的硬件连接图: 1 上电操作 配置wm8960的上电脚,文件位置:arch/arm/mach ...
- QT-Embedded-4.5.3在海思35xx上移植
QT4.5.3在海思3520A上移植步骤-修订版 2015年3月29日星期日, 16:59:03 1.首先要保证已经安装了海思的交叉编译器: #arm-hi + Tab key to show wh ...
- 在秉火STM32F429挑战者开发板上移植Huawei LiteOS指南
昨天在B站上突然看到了一个短视频,是在正点原子的战舰V3开发板上移植华为的Huawei LiteOS操作系统,就是这个视频:看完鸿蒙OS发布会,试用华为的物联网操作系统Lite OS(B站),于是呢, ...
- 编译在arm板上使用的sqlite3的静动态库
采用的是sqlite-autoconf-3080002.tar.gz 解压 tar xvf sqlite-autoconf-3080002.tar.gz 进入 cd sqlite-autoconf-3 ...
- 在MacOS上使用gdb(cgdb)调试Golang程序
如果你在MacOS上使用GDB工具载入Golang程序时无法载入,这篇文章可以解决.本文不具体介绍调试的方法,网上的文章太多了就不赘述了. cgdb使用的是gdb的内核,方法和原理试用本文. 问题分析 ...
- .net core在Linux ARM板上运行
最近接了个临时任务,给别的项目组的机器人平台上开发个小程序,那机器人上跑的是ARM平台,ubuntu的系统. 本来打算用C++写的,由于最近用.net core较多,鉴于其在linux平台良好的兼容性 ...
- [ssh]如何设计ARM板上多用户key登录系统
如何设计ARM板上多用户key登录系统
随机推荐
- nginx配置、域名、前端代码部署
服务器上部署nginx,部署多个独立的代码,用nginx做域名映射的配置方法: 修改/usr/local/nginx/conf/nginx.conf文件,重点是最后一行,include /data/n ...
- 【前行&赛时总结】◇第4站&赛时9◇ CF Round 513 Div1+Div2
◇第4站&赛时9◇ CF Round 513 Div1+Div2 第一次在CF里涨Rating QWQ 深感不易……作blog以记之 ( ̄▽ ̄)" +Codeforces 的门为你打 ...
- chromium之tuple
// A Tuple is a generic templatized container, similar in concept to std::pair. // There are classes ...
- poj_1091_跳蚤
Z城市居住着很多只跳蚤.在Z城市周六生活频道有一个娱乐节目.一只跳蚤将被请上一个高空钢丝的正中央.钢丝很长,可以看作是无限长.节目主持人会给该跳蚤发一张卡片.卡片上写有N+1个自然数.其中最后一个是M ...
- SD 信贷出口 备忘
信贷出口LVKMPFZ1,LVKMPFZ2,LVKMPFZ3
- python 之函数
一 函数的定义:对功能和动作的封装和定义.二 函数的格式:def 函数名(形参列表): 函数名就是变量名:规则就是变量的规则 函数体(return) ret = 函数名(实参列表)三 函数的返回值:函 ...
- PHP导出数据到表格的实例
我发现最近的项目需要导出Excel表的页面非常的多,想来这个也是我们常用的功能了,现在我可以很熟练的导出了,但是记得当时自己第一次导出时还是绕了一些弯路的,那么现在我就来记录下我这次用exshop框架 ...
- Java中的文件和stream流的操作代码
1.Java中FileRead方法的运用代码及详解 package example2;import java.io.FileReader;import java.io.IOException;clas ...
- jsonp 跨域只能调用一次ajax(无法多次调用或者循环调用)
jsonp 跨域只能掉用一次ajax(无法多次调用或者循环调用) 百度搜索关键字:jsonp 只能调用一次ajax 解决方法 //回调函数设置,给后台执行 window[callback ...
- 【vlan-trunk和802.1q子接口配置】
根据项目需求,搭建好拓扑图如下: 配置sw1的g1/0/3的/trunk,把g1/0/1和g1/0/2分别加入vlan 10 和 vlan 20 配置sw1的g1/0/3的/trunk,把g1/0/1 ...