從零開始,ubuntu上 搭建xilinx zynq linux 編譯環境
阿新 • • 發佈:2019-02-15
主機環境:ubuntu10.04 lts X64_64bit
編譯器:arm gnu tools for Xilinx參考網址:http://wiki.xilinx.com/zynq-tools(這個網址的內容真的需要更新了)
詳細步驟:以下操作均在root使用者下進行,官方參考網址的東西僅是“參考”的
1,下載交叉編譯器
在ubuntu裡下載arm-2010.09-62-arm-xilinxa9-linux-gnueabi.bin安裝檔案,網址:https://sourcery.mentor.com/GNUToolchain/kbentry62 ,放到/tools/中
2,同步xilinx的linux kernel
mkdir /kernel
cd /kernel
git clone git://git.xilinx.com/linux-2.6-xlnx.git
然後就等著吧,總共1.3G的程式碼,下載完畢後,
cd /kernel/
ls
有個新的資料夾linux-2.6-xlnx,這個就是zynq的linux kernel程式碼了。需要注意的是,雖然名字裡面有個2.6,但實際的kernel是3.3的,因為這個是主線版本,下載下來的是xilinxpatch的最新kernel。說不定你同步的時候已經是3.4/3.5了。
如果你的網路不支援git,可以用http代理服務,先建立一個 git-proxy.sh檔案,在裡面寫上:
#!/bin/sh
exec corkscrew $*
然後export一下,
bash> export GIT_PROXY_COMMAND="//git-proxy.sh"
上面http://wiki.xilinx.com/using-git 上的方法,我的實際情況比較特殊,網路伺服器還要使用者名稱和密碼,怎麼辦呢,稍微麻煩一點:
將git-proxy.sh中的內容修改成這樣滴:
#!/bin/sh
exec corkscrew 172.16.0.252 8080 $* /disk2data/authfile
然後再在git-proxy.sh同目錄下建立一個authfile檔案,內容為
使用者名稱:密碼
最後export GIT_PROXY_COMMAND="//git-proxy.sh"
至此我的電腦也可以無憂無慮的git啦
3,安裝交叉編譯器
cd //tools/
chmod 755 arm-2010.09-62-arm-xilinxa9-linux-gnueabi.bin
./ arm-2010.09-62-arm-xilinxa9-linux-gnueabi.bin
然後出現了安裝介面,選擇安裝的資料夾等等,可以自己設,嫌麻煩就一路回車或者“yes”就行了。不過要記住安裝的目錄,這個一會兒編譯的時候要用到….
4,設定交叉編譯環境
官網http://wiki.xilinx.com/zynq-tools 上說下載ia32-libs的庫,
apt-get install ia32-libs但是我的電腦因為之前配置過android的編譯環境,已經安裝了,直接設定就可以了:
export CROSS_COMPILE=arm-xilinxa9-linux-gnueabi-
export PATH=//CodeSourcery/Sourcery_G++_Lite/binPATH
注意官網上這兩條命令沒有更新,不要copy-paste,俺的是對的
5,編譯zynq的核心
由於zedboard核心還沒有被加入到zynq的核心中,我們就先用zc702/770的板卡配置來測試一下環境吧:
cd //kernel/linux-2.6-xlnx
make ARCH=arm xilinx_zynq_defconfig --配置核心
make ARCH=arm --編譯
大概需要幾分鐘吧,編譯就完成了,檢視
cd /myPath/kernel/linux-2.6-xlnx/arch/arm/boot
裡面的zImage就是剛剛生成的核心