前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >skyeye安装+arm-elf-gdb安装+模拟s3c44b0x+执行ucos4skyeye

skyeye安装+arm-elf-gdb安装+模拟s3c44b0x+执行ucos4skyeye

作者头像
全栈程序员站长
发布2022-07-05 20:41:21
5820
发布2022-07-05 20:41:21
举报

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

【假设你要引用。请阅读所有,这里是我的为期两天的过程只是一个记录】

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

当中过程中须要下载llvm-2.8.tgz。下载地址:http://llvm.org/releases/2.8/llvm-2.8.tgz 解压后进入文件夹,运行以下脚本安装: ./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得到的是正确的结果:

http://blog.csdn.net/ranruoyu1003/article/details/6067175

要使用SkeyEye调试功能,能够在运行的时候增加-d參数,比如: $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 这就说明已经连接上服务,能够開始调试了

【仅仅是參照上面的步骤,我调试的是ucos4skyeye/samples/ucos_test】

skyeye安装+arm-elf-gdb安装+模拟s3c44b0x+执行ucos4skyeye
skyeye安装+arm-elf-gdb安装+模拟s3c44b0x+执行ucos4skyeye

另外还參考:http://blog.csdn.net/htttw/article/details/7226754 当中包括了能够帮助理解基本步骤和文件作用的信息

http://www.cnblogs.com/ahuo/archive/2012/08/27/2658133.html

这些包括GDB和arm-elf-gdb关系和编译时间差

版权声明:本文博客原创文章。博客,未经同意,不得转载。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/117632.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022年1月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档