skyeye安装+arm-elf-gdb安装+模拟s3c44b0x+执行ucos4skyeye
skyeye安装:ubuntu12.0432 llvm2.8 skyeye1.3.3
http://blog.chinaunix.net/uid-26963688-id-3267351.html
当中有几处是错误的,改动后的不带图的步骤例如以下:
Ubuntu 12.04 LTS 32bit 1G DRAM 2 cores + skyeye-1.3.3_rel.tar.gz
开发编译环境准备:
首先安装skyeye的依赖包
sudo apt-get install libgtk2.0-dev pkg-config libatk1.0-dev libpango1.0-dev libfreetype6-dev libglib2.0-dev libx11-dev binutils-dev libncurses5-dev libxpm-dev autoconf automake libtool python-dev llvm
安装步骤:
1. 解压源文件:tar xvf skyeye-1.3.3_rel.tar.gz 安装的这个版本号的skyeye并不能正确执行,主要是执行ucos4skyeye的时候会出现skyeye.conf的配置信息不对的现象。换成了
2. 配置skyeye:./configure (在解压后的目录中)
3. 编译第三方文库:make lib -j2(用两个核)
4. 编译skyeye:make -j2
5. 安装skyeye库文件:make install_lib
6. 安装skyeye:make install
7. 执行skyeye:在opt/skyeye/bin文件夹下:./skyeye_main.py
8. 測试hello world应用程序:
首先切换到/opt/skyeye/testsuite/arm_hello文件夹下
然后执行:/opt/skyeye/bin/skyeye_main.py -e arm_hello,进入skyeye命令行模式
然后执行start命令,执行arm_hello应用程序
终端将打印架构信息。同一时候探出串口窗体
终端中执行run命令。串口会不停的打印出helloworld
解压后进入文件夹,运行以下脚本安装:
./configure
make【费时】
sudo make install
以上的能够正常完毕这个自带的样例的执行,可是后来下载的skyeye-testsuite却不能正常执行
详细的现象是:
在uCLinux/s3c44box文件夹下不可以正常执行,显示的错误信息是bank相关的输出
后来查看网上的资料不可以得到正确的答案
然后在自己的ubuntu12.04 32bit 虚拟机上用apt-get install skyeye 安装了一个应该是1.2.x版本号的skyeye,显示是安装成功了
输入skyeye也是可以进入skyeye中,可是对于skyeye-testsuite/uCLinux/s3c44b0x中却还是出现的和上面的一样的错误
所以还是没成功!
最后,是最后,依照http://blog.chinaunix.net/uid-20690340-id-1894428.html博主介绍的方法安装了skyeye-1.2.6(仅仅是借鉴skyeye的安装)
替换掉了原来的已有的(1.3.3还是存在的,可是在terminal中输入skyeye时运行的是1.2.6)
这下在skyeye-testsuite中可以正常执行
在网上下载了ucos4skyeye也是可以正常执行里面的样例。真是太令人激动了!
可是直接执行usoc4skyeye/ucos_test的时候并没有像readme中说的那样会有一个任务供输入,一个任务供输出。
可是种种迹象表明的是这是能够正常执行的。。!
问题出在哪儿,我不知道了。我想到了gdb来调试。想看一下到底是哪个地方没有正常执行起来。
这就引发了还有一个让我纠结的问题:
arm-elf-gdb的安装。
。。。
安装的过程是这种:
http://blog.chinaunix.net/uid-15007890-id-2377453.html
下载gdb安装包:ftp://ftp.gnu.org/gnu/gdb/
tar jxvf gdb-7.0.tar.bz2
cd gdb-7.0
mkdir build-gdb
cd build-gdb
../configure --target=arm-elf
make
make install
当中应该会遇到gcc编译全部warning都依照error的make错误
这是由于如今的GCC的版本号比較新的缘故(我的是4.6.3,自然也是遇到了这个问题)
只是我的解决方法并非将GCC降级。而是将某个出错文件夹下的Makefile中的 -Werror去掉
这样就能够正常安装了
这个过程还是比較纠结的。
所以经过上面的两天的折腾,我得到了以下的平台信息:
【1】skyeye 1.2.6(源代码安装。成功的标志是 在terminal不论什么路径下输入skyeye会出现skyeye信息)
【2】arm-elf-tools-20040427.sh
【3】arm-elf-gdb
然后我用这上面折腾好的工具调试下载的ucos4skyeye得到的是正确的结果:
$skyeye -e hello -d
skyeye会提示
debugmode= 1, filename = skyeye.conf, server TCP port is 12345
这时就在本机的12345port开启了gdb服务
这时在当前文件夹又一次开一个终端程序
$arm-elf-gdb hello
(gdb) target remote 127.0.0.1:12345
Remote debugging using 127.0.0.1:12345
hello () at hello.c:23
23 }
(gdb)
同一时候原skeyeye段给出提示
Remote debugging using host:12345
这就说明已经连接上服务,能够開始调试了
另外还參考:http://blog.csdn.net/htttw/article/details/7226754
当中包括了能够帮助理解基本步骤和文件作用的信息
版权声明:本文博客原创文章。博客,未经同意,不得转载。
skyeye安装+arm-elf-gdb安装+模拟s3c44b0x+执行ucos4skyeye的更多相关文章
- Ubuntu安装ARM架构GCC工具链(ubuntu install ARM toolchain)最简单办法
一.安装ARM-Linux-GCC工具链 只需要一句命令: sudo apt-get install gcc-arm-linux-gnueabi 前提是你的Ubuntu系统版本是官网支持的最新的版本, ...
- Ubuntu12.4 64位 安装 arm linux gcc 4.3.2
一.下载arm linux gcc 4.3.2 http://pan.baidu.com/share/link?shareid=1575352696&uk=2754759285&fid ...
- 【转】Ubuntu安装ARM架构GCC工具链(ubuntu install ARM toolchain)最简单办法
原文网址:http://www.cnblogs.com/muyun/p/3370996.html 一.安装ARM-Linux-GCC工具链 只需要一句命令: sudo apt-get install ...
- gdb安装
1.卸载原有gdb 以root用户登录 1.1 查询原有gdb包名,执行命令: rpm -q gdb 1.2 卸载原有gdb包,假设gdb包名为gdb-7.0-0.4.16,执行命令:rpm - ...
- CentOs下安装gcc/g++/gdb
使用yum安装gcc:yum install gcc即可.使用:which gcc 查看是否安装成功 使用yum安装g++:yum install gcc-c++ 即可.使用:which g++ 查看 ...
- learning docker steps(9) ----- arm linux docker 安装
参考:https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-docker-ce-1 想要在arm linux上安装docker ...
- Laravel 安装mysql、表增加模拟数据、生成控制器
参考中文网教程: 安装mysql.表增加模拟数据 http://www.golaravel.com/post/2016-ban-laravel-xi-lie-ru-men-jiao-cheng-yi/ ...
- Oracle Solaris 10下gdb安装(附安装包)
文章目录 1. 背景说明 2. gdb相关包 3. gdb安装 3.1 上传资源 3.2 解压 3.3 安装 3.4 环境变量 4. 位数确认 5. 验证可用性 1. 背景说明 本文承接Oracle ...
- Genymotion模拟器安装ARM架构编译应用失败解决方案
我们在安装一些应用到Genymotion模拟器会提示:adb: failed to install xx.apk: Failure [INSTALL_FAILED_NO_MATCHING_ABIS: ...
随机推荐
- poj 1220 NUMBER BASE CONVERSION(短除法进制转换)
题目连接:1220 NUMBER BASE CONVERSION 题目大意:给出两个进制oldBase 和newBase, 以及以oldBase进制存在的数.要求将这个oldBase进制的数转换成ne ...
- Unity3D游戏开发从零单排(四) - 制作一个iOS游戏
提要 此篇是一个国外教程的翻译,尽管有点老,可是适合新手入门. 自己去写代码.debug,布置场景,能够收获到非常多.游戏邦上已经有前面两部分的译文,这里翻译的是游戏的最后一个部分. 欢迎回来 在第一 ...
- 使用jquery+一般处理程序异步载入信息
需求:有时候.web界面对性能要求比較高.我们就不考虑使用asp.net控件.而是使用html标签+jquery+一般处理程序来进行异步处理. watermark/2/text/aHR0cDovL2J ...
- WCF之添加自定义用户名密码认证
1.创建WCF服务应用以及调用客户端(请自行google). 2.创建X509证书 cmd 进入 C:\Program Files\Microsoft SDKs\Windows\v6. ...
- 如何收集 EBS 各种相关业务的表的数据
1. Receiving 相关 參照 Note: 402245.1, 跑 rcv11i_sa.sql 就能够, 输入 po number, 其余默认. 參照 Note: 1294177.1, 假设上面 ...
- 利用python 提取log 文件里的关键句子,并进行统计分析
利用python开发了一个提取sim.log 中的各个关键步骤中的时间并进行统计的程序: #!/usr/bin/python2.6 import re,datetime file_name='/hom ...
- U7Linux文件与目录管理
1. .:代表当前层目录. ..:代表上一层目录. -:代表前一个工作目录. ~:代表目前用户所在的主文件夹. ~account:代表account这个用户的主文件夹. 2.pwd:显示当前目录. p ...
- Maven安装中的问题
按照<Maven实战>中的讲述,在安装完Maven后执行mvn -v的时候,出现了问题.在网上搜索到了解决办法: 引用:http://blog.csdn.net/xueyepiaoling ...
- 辛星与您使用CSS导航条
第一步.我们创建了一个新的my.html档.在内容填入如下面.这个html文件不动,直到最后.正是这些内容: <!DOCTYPE html PUBLIC "-//W3C//DTD XH ...
- PHP类中的七种语法说明
类中的七种语法说明 -属性 -静态属性 -方法 -静态方法 -类常量 -构造函数 -析构函数 <?php class Student { // 类里的属性.方法和函数的訪问权限有 (函数和方法是 ...