一文教你搭建国产嵌入式模拟器SkyEye开发环境
作者:泽文i 准大四,热爱嵌入式、喜欢DIY,有兴趣可以关注他
SkyEye介绍
SkyEye是一个开源软件(OpenSource Software)项目,中文名字是"天目"。SkyEye的目标是在通用的Linux和Windows平台上实现一个纯软件集成开发环境,模拟常见的嵌入式计算机系统(这里假定"仿真"和"模拟"的意思基本相同);可在SkyEye上运行μCLinux以及μC/OS-II等多种嵌入式操作系统和各种系统软件(如TCP/IP,图形子系统,文件子系统等),并可对它们进行源码级的分析和测试。
关于开源版本的更多介绍:点击我跳转
目前开源版本停留在1.3.5版本,后期版本由浙江迪捷软件科技有限公司开发和维护,点击我查看SkyEye的最新介绍。
访问这个地址,下载相关的安装包和工具包。
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-devsudo apt-get install binutils-de编译SkyEye
这里我在根目录新建一个文件夹
mkdir work
进入这个文件夹,从release/skyeye-1.3.5中拷贝安装包和软件包到这里,并对其解压。
cd workunzip libiconv-1.12.ziptar -zxvf llvm-3.0.tar.gztar -jxvf Python-2.7.tar.bz2tar -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:
./configuremakesudo make install
期间make install若出现问题,make clean后重新make(不要使用sudo make),然后sudo make install。
再安装python-2.7:
./configure --enable-shared --enable-unicode=ucs4sudo makesudo 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 makesudo make install_libsudo make install
skyeye的安装路径在opt/skyeye,我们将它加入环境变量,就可以快捷操作:
先打开当前用户的全局设置:
vim ~/.bashrc
输入代码:
#skyeye 1.3.5export 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_helloskyeye -e arm_hello
出现上图所示,代表启动正常,现在我们输入两条命令,启动这个demo:
startrun
至此,我们的skyeye安装成功!
-
一文了解Windows系统中如何读写临时文件
2021-07-30 -
一文了解极限电流型微量氧传感器在自动化烘焙中的作用
2021-07-30 -
一文了解如何精确测试电机启动波形?
2021-07-30 -
一文了解Hive SQL语句的正确执行顺序
2021-07-29 -
一文了解高级综合优化选项ungroup
2021-07-29 -
一文了解统治世界的十大算法
2021-07-22 -
一文了解如何使用Python+OpenCV构建手部跟踪系统
2021-07-21 -
一文了解数仓建设及数据治理
2021-07-21 -
一文了解基于Flink构建全场景实时数仓
2021-07-16 -
一文了解SR05-4二极管ESD静电保护元器件
2021-07-16 -
一文教你基于学习的方法决定在哪些分支节点上运行heuristic算法
2021-07-16 -
一文了解程序链接过程之动态链接
2021-07-15 -
一文了解军队文档管理平台
2021-07-13 -
可编程量子模拟器让量子计算进入全新领域
2021-07-12 -
一文详解不带Anchors和NMS的目标检测
2021-07-12