问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

手把手教你搭建国产嵌入式模拟器SkyEye开发环境

创作时间:
作者:
@小白创作中心

手把手教你搭建国产嵌入式模拟器SkyEye开发环境

引用
CSDN
1.
https://blog.csdn.net/m0_46556792/article/details/118958918

SkyEye介绍

SkyEye是一个开源软件(OpenSource Software)项目,中文名字是"天目"。SkyEye的目标是在通用的Linux和Windows平台上实现一个纯软件集成开发环境,模拟常见的嵌入式计算机系统(这里假定"仿真"和"模拟"的意思基本相同);可在SkyEye上运行μCLinux以及μC/OS-II等多种嵌入式操作系统和各种系统软件(如TCP/IP,图形子系统,文件子系统等),并可对它们进行源码级的分析和测试。

关于开源版本的更多介绍:点击我跳转

目前开源版本停留在1.3.5版本,后期版本由浙江迪捷软件科技有限公司开发和维护,点击我查看SkyEye的最新介绍

访问这个地址:https://gitee.com/open-skyeye/build,下载相关的安装包和工具包。

build教程

环境说明

本文介绍在操作系统 Ubuntu 16.04 中编译安装硬件仿真软件 SkyEye 1.3.5 的方法。

镜像版本:ubuntu-16.04.6-desktop-i386.iso

为了保证顺利安装,可以选择与本文相同的Ubuntu来操作。同时你需要下载本仓库,

release/skyeye-1.3.5

中包含了我们需要的安装包和一些软件包。

安装依赖

由于SkyEye1.3.5引用了llvm3.0底层虚拟机、x11底层界面库等一些软件。如果是新安装的Ubuntu系统,这些软件可能就没有,因此在安装SkyEye之前需要把它们一起安装到机器上。

首先执行:


sudo apt-get update  

然后执行以下命令:


sudo apt-get install git-core make automake autoconf libtool g++ python-dev libxft-dev libx11-dev libxpm-dev libncurses5-dev texi2html xterm texinfo x11proto-xext-dev libxext-dev python-numpy python-faulthandler python-wxtools libjson0-dev putty  

主要涉及的库有:

名称 说明

git-core -

make -

automake -

autoconf -

libtool 动态库加载工具

g++ -

python-dev -

libxft-dev -

libx11-dev 界面底层库依赖包

libxpm-dev -

libncurses5-dev -

texi2html -

xterm 终端模拟器

texinfo 文档系统

x11proto-xext-dev 界面底层库

libxext-dev -

python-numpy -

python-faulthandler -

python-wxtools -

libjson0-dev -

putty 终端工具

接着,我们还需要更新或安装一些依赖库,这些库ubuntu自带,但是保险起见,我们需要手动再安装一遍。


sudo apt-get install libgtk2.0-dev pkg-config libatk1.0-dev  

sudo apt-get install libpango1.0-dev libfreetype6-dev libglib2.0-dev libx11-dev binutils-dev  

sudo apt-get install libncurses5-dev libxpm-dev libltdl-dev  

sudo apt-get install binutils-de  

编译SkyEye

这里我们在根目录新建一个文件夹


mkdir work  

进入这个文件夹,从

release/skyeye-1.3.5

中拷贝安装包和软件包到这里,并对其解压。


cd work  

unzip libiconv-1.12.zip  

tar -zxvf llvm-3.0.tar.gz  

tar -jxvf Python-2.7.tar.bz2  

tar -jxvf skyeye-1.3.5_rc1.tar.bz2  

简单介绍一下这些软件包的作用:

名称 说明

libiconv-1.14 字符编码转换库

llvm-3.0 汇编虚拟机

Python-2.7 程序设计语言

kyeye-1.3.5 嵌入式系统仿真器

依次进入libiconv-1.12、Python-2.7文件夹,先安装libiconv:


./configure  

make  

sudo make install  

期间

make install

若出现问题,

make clean

后重新

make

(不要使用

sudo make

),然后

sudo make install

再安装python-2.7:


./configure --enable-shared  --enable-unicode=ucs4  

sudo make  

sudo make install  

以上步骤确认没有问题后进行SkyEye的编译安装,进入SkyEye源码目录,输入以下命令:


./configure  

sudo make lib  

若出现如下问题:


/home/tym/work/1.clone/skyeye-1.3.5_rc1/third-party/opcodes/cgen-ops.h:423:  

multiple definition of `SUBWORDTFSI'  

请按照下图指示操作:

接下来输入以下命令,完成编译和安装:


sudo make  

sudo make install_lib  

sudo make install  

skyeye的安装路径在

opt/skyeye

,我们将它加入环境变量,就可以快捷操作:

先打开当前用户的全局设置:


vim ~/.bashrc  

输入代码:


#skyeye 1.3.5  

export PATH=/opt/skyeye/bin:$PATH  

之后保存退出,输入命令更新设置:


source .bashrc  

输入命令,看看能否启动skyeye:


skyeye  

如果这个时候报错:

说明这个库不存在,我们需要拷贝一个系统的库到这里,并重新命名:


 sudo cp //usr/lib/i386-linux-gnu/libbfd-2.26-system.so /usr/lib/libbfd-2.18.50.20070907.so  

如果编译还出现类似错误,操作相同,直接找到系统下有的库,复制过来重命名即可。

现在我们进入skyeye根目录,利用提供的测试demo,验证skyeye是否正常工作:


cd //opt/skyeye/testsuite/arm_hello  

skyeye -e arm_hello  

出现上图所示,代表启动正常,现在我们输入两条命令,启动这个demo:


start  

run  

至此,我们的skyeye安装成功!

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号