訂閱
糾錯(cuò)
加入自媒體

一文教你搭建國(guó)產(chǎn)嵌入式模擬器SkyEye開(kāi)發(fā)環(huán)境

作者:澤文i 準(zhǔn)大四,熱愛(ài)嵌入式、喜歡DIY,有興趣可以關(guān)注他

SkyEye介紹

SkyEye是一個(gè)開(kāi)源軟件(OpenSource Software)項(xiàng)目,中文名字是"天目"。SkyEye的目標(biāo)是在通用的Linux和Windows平臺(tái)上實(shí)現(xiàn)一個(gè)純軟件集成開(kāi)發(fā)環(huán)境,模擬常見(jià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)于開(kāi)源版本的更多介紹:點(diǎn)擊我跳轉(zhuǎn)

目前開(kāi)源版本停留在1.3.5版本,后期版本由浙江迪捷軟件科技有限公司開(kāi)發(fā)和維護(hù),點(diǎn)擊我查看SkyEye的最新介紹。

訪問(wèn)這個(gè)地址,下載相關(guān)的安裝包和工具包。

build教程 環(huán)境說(shuō)明

本文介紹在操作系統(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),這些軟件可能就沒(méi)有,因此在安裝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ù)有:

名稱說(shuō)明git-core-make-automake-autoconf-libtool動(dòng)態(tài)庫(kù)加載工具g++-python-dev-libxft-dev-libx11-dev界面底層庫(kù)依賴包libxpm-dev-libncurses5-dev-texi2html-xterm終端模擬器texinfo文檔系統(tǒng)x11proto-xext-dev界面底層庫(kù)libxext-dev-python-numpy-python-faulthandler-python-wxtools-libjson0-dev-putty終端工具

接著,我們還需要更新或安裝一些依賴庫(kù),這些庫(kù)ubuntu自帶,但是保險(xiǎn)起見(jià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-dev
sudo apt-get install binutils-de
編譯SkyEye

這里我在根目錄新建一個(gè)文件夾

mkdir work

進(jìn)入這個(gè)文件夾,從release/skyeye-1.3.5中拷貝安裝包和軟件包到這里,并對(duì)其解壓。

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

簡(jiǎn)單介紹一下這些軟件包的作用:

名稱說(shuō)明libiconv-1.14字符編碼轉(zhuǎn)換庫(kù)llvm-3.0匯編虛擬機(jī)Python-2.7程序設(shè)計(jì)語(yǔ)言kyeye-1.3.5嵌入式系統(tǒng)仿真器

依次進(jìn)入libiconv-1.12、Python-2.7文件夾,先安裝libiconv:

./configure
make
sudo make install

期間make install若出現(xiàn)問(wèn)題,make clean后重新make(不要使用sudo make),然后sudo make install。

再安裝python-2.7:

./configure --enable-shared  --enable-unicode=ucs4
sudo make
sudo make install

以上步驟確認(rèn)沒(méi)有問(wèn)題后進(jìn)行SkyEye的編譯安裝,進(jìn)入SkyEye源碼目錄,輸入以下命令:

./configure
sudo make lib

若出現(xiàn)如下問(wè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 make
sudo make install_lib
sudo make install

skyeye的安裝路徑在opt/skyeye,我們將它加入環(huán)境變量,就可以快捷操作:

先打開(kāi)當(dāng)前用戶的全局設(shè)置:

vim ~/.bashrc

輸入代碼:

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

之后保存退出,輸入命令更新設(shè)置:

source .bashrc

輸入命令,看看能否啟動(dòng)skyeye:

skyeye

如果這個(gè)時(shí)候報(bào)錯(cuò):

說(shuō)明這個(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ù)制過(guò)來(lái)重命名即可。

現(xiàn)在我們進(jìn)入skyeye根目錄,利用提供的測(cè)試demo,驗(yàn)證skyeye是否正常工作:

cd //opt/skyeye/testsuite/arm_hello
skyeye -e arm_hello

出現(xiàn)上圖所示,代表啟動(dòng)正常,現(xiàn)在我們輸入兩條命令,啟動(dòng)這個(gè)demo:

start
run

至此,我們的skyeye安裝成功!

聲明: 本文由入駐維科號(hào)的作者撰寫(xiě),觀點(diǎn)僅代表作者本人,不代表OFweek立場(chǎng)。如有侵權(quán)或其他問(wèn)題,請(qǐng)聯(lián)系舉報(bào)。

發(fā)表評(píng)論

0條評(píng)論,0人參與

請(qǐng)輸入評(píng)論內(nèi)容...

請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字

您提交的評(píng)論過(guò)于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無(wú)評(píng)論

暫無(wú)評(píng)論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號(hào)
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯(cuò)
x
*文字標(biāo)題:
*糾錯(cuò)內(nèi)容:
聯(lián)系郵箱:
*驗(yàn) 證 碼:

粵公網(wǎng)安備 44030502002758號(hào)