SkyEye介紹
SkyEye是一個(gè)開源軟件(OpenSource Software)項(xiàng)目,中文名字是"天目"。SkyEye的目標(biāo)是在通用的Linux和Windows平臺(tái)上實(shí)現(xiàn)一個(gè)純軟件集成開發(fā)環(huán)境,模擬常見的嵌入式計(jì)算機(jī)系統(tǒng)(這里假定"仿真"和"模擬"的意思基本相同);可在SkyEye上運(yùn)行μCLinux以及μC/OS-II等多種嵌入式操作系統(tǒng)和各種系統(tǒng)軟件(如TCP/IP,圖形子系統(tǒng),文件子系統(tǒng)等),并可對(duì)它們進(jìn)行源碼級(jí)的分析和測(cè)試。
關(guān)于開源版本的更多介紹:點(diǎn)擊我跳轉(zhuǎn)
目前開源版本停留在1.3.5版本,后期版本由浙江迪捷軟件科技有限公司開發(fā)和維護(hù),點(diǎn)擊我查看SkyEye的最新介紹。
訪問這個(gè)地址:https://gitee.com/open-skyeye/build,下載相關(guān)的安裝包和工具包。
build教程
環(huán)境說明
本文介紹在操作系統(tǒng) Ubuntu 16.04 中編譯安裝硬件仿真軟件 SkyEye 1.3.5 的方法。
鏡像版本:ubuntu-16.04.6-desktop-i386.iso 為了保證順利安裝,可以選擇與本文相同的Ubuntu來(lái)操作。同時(shí)你需要下載本倉(cāng)庫(kù),release/skyeye-1.3.5
中包含了我們需要的安裝包和一些軟件包。
安裝依賴
由于SkyEye1.3.5引用了llvm3.0底層虛擬機(jī)、x11底層界面庫(kù)等一些軟件。如果是新安裝的Ubuntu系統(tǒng),這些軟件可能就沒有,因此在安裝SkyEye之前需要把它們一起安裝到機(jī)器上。
首先執(zhí)行:
sudo apt-get update
然后執(zhí)行以下命令:
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
主要涉及的庫(kù)有:
接著,我們還需要更新或安裝一些依賴庫(kù),這些庫(kù)ubuntu自帶,但是保險(xiǎn)起見,我們需要手動(dòng)再安裝一遍。
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
這里我在根目錄新建一個(gè)文件夾
mkdir work
進(jìn)入這個(gè)文件夾,從release/skyeye-1.3.5
中拷貝安裝包和軟件包到這里,并對(duì)其解壓。
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
簡(jiǎn)單介紹一下這些軟件包的作用:
依次進(jìn)入libiconv-1.12、Python-2.7文件夾,先安裝libiconv:
./configuremakesudo make install
期間make install
若出現(xiàn)問題,make clean
后重新make
(不要使用sudo make
),然后sudo make install
。
再安裝python-2.7:
./configure --enable-shared --enable-unicode=ucs4sudo makesudo make install
以上步驟確認(rèn)沒有問題后進(jìn)行SkyEye的編譯安裝,進(jìn)入SkyEye源碼目錄,輸入以下命令:
./configure sudo make lib
若出現(xiàn)如下問題:
/home/tym/work/1.clone/skyeye-1.3.5_rc1/third-party/opcodes/cgen-ops.h:423: multiple definition of `SUBWORDTFSI'
請(qǐng)按照下圖指示操作:
" ><>
接下來(lái)輸入以下命令,完成編譯和安裝:
sudo makesudo make install_libsudo make install
skyeye的安裝路徑在opt/skyeye
,我們將它加入環(huán)境變量,就可以快捷操作:
先打開當(dāng)前用戶的全局設(shè)置:
vim ~/.bashrc
輸入代碼:
#skyeye 1.3.5export PATH=/opt/skyeye/bin:$PATH
之后保存退出,輸入命令更新設(shè)置:
source .bashrc
輸入命令,看看能否啟動(dòng)skyeye:
skyeye
如果這個(gè)時(shí)候報(bào)錯(cuò):
說明這個(gè)庫(kù)不存在,我們需要拷貝一個(gè)系統(tǒng)的庫(kù)到這里,并重新命名:
sudo cp //usr/lib/i386-linux-gnu/libbfd-2.26-system.so /usr/lib/libbfd-2.18.50.20070907.so
如果編譯還出現(xiàn)類似錯(cuò)誤,操作相同,直接找到系統(tǒng)下有的庫(kù),復(fù)制過來(lái)重命名即可。
現(xiàn)在我們進(jìn)入skyeye根目錄,利用提供的測(cè)試demo,驗(yàn)證skyeye是否正常工作:
cd //opt/skyeye/testsuite/arm_helloskyeye -e arm_hello
出現(xiàn)上圖所示,代表啟動(dòng)正常,現(xiàn)在我們輸入兩條命令,啟動(dòng)這個(gè)demo:
startrun
至此,我們的skyeye安裝成功!