從skyeye學習arm( 工具篇)
【 宣告:版權所有,歡迎轉載,請勿用於商業用途。 聯絡信箱:feixiaoxing @163.com】
在前面的一篇文章中,我們介紹瞭如何利用skyeye啟動最簡單的arm程式程式碼。今天,我們可以從頭開始介紹如何搭建相關的環境。因為是skyeye的模擬,所以主要的工具其實不多,主要就是skyeye的編譯, arm交叉編譯工具的獲取,gdb工具的編譯。
(1) skyeye工具的編譯
skyeye其實就是我們模擬的環境,也是最終程式碼執行的環境。所以我們選擇了skyeye 1.2.6版本。編譯skyeye的過程其實非常簡單,
a ) 解壓, tar xjvf skyeye-1.2.6_rc1.tag.bz2;
b)cd skyeye-1.2.6_rc1;
c ) ./configure;
d) make, 此時會產生一個錯誤, 修改的方法就是在nandflash_smallblock.c的第519行open函式呼叫增加一個666的引數就可以了;
e)make install。
(2)arm交叉編譯環境
因為涉及到u-boot、linux、fs等配套的程式碼,所以我們必須選擇配套的交叉編譯環境。最簡單的方法就是從網上下載環境,版本為arm-linux-gcc-3.4.1.tar.bz2。
(3)gdb除錯環境
skyeye的另外一個優點就是可以與gdb除錯。所以我們可以編譯一個基於arm的除錯工具,版本為gdb-7.1a.tar.gz。方法為,
a) 解壓, tar xzvf gdb-7.1a.tar.gz;
b) cd gdb-7.1;
c) ./configure --target=arm-linux --enable-shared --without-x --disable-gdbtk --disable-tui --without-included-regex --without-included-gettext --disable-werror ;
d) make;
e) make install。
有了上面的工具,我們就可以在ubuntu上靈活測試skyeye和arm了。