結束了對xilinx-arm-linux交叉編譯鏈安裝后,總結一下整個過程,方便后來的研究者們,少走點彎路。
關於xilinx-arm-linux交叉編譯鏈的安裝,網上一搜一大把,可是有的資料中的資源老舊,有的已經無法下載了。有的方法自己測試后並不能工作,因此,在這里系統的寫個說明。
首先,說明為什么要裝xilinx-arm-linux編譯鏈,我使用的是Xilinx的Zedboard開發。
在Zynq上運行Linux后,如果還要對PS操作,有兩個辦法:
(1)、在Windows系統上面,使用SDK新建C Project SDK自帶編譯環境,編譯后自動產生elf文件。使用U盤將elf拷貝到Zedboard,運行即可。這個方法今后會詳細說明。
(2)、在Linux系統上面,使用xilinx-arm-linux交叉編譯鏈,編譯C文件,將編譯后的文件拷貝到Zedboard即可。今天主要講這一部分,安裝步驟如下。
1、需要一台裝有Linux系統或Windows系統裝有Linux虛擬機的電腦,系統為Ubuntu;
2、進入Ubuntu系統,按Ctrl+Alt+T調出Terminal終端。輸入sudo passwd root,會要求輸入用戶密碼,然后重置root的密碼,這里密碼都不會顯示。重置完后輸入su root,再輸入剛剛重置的root密碼即可進入root

這里要說明很關鍵的一點,一定要把目錄設置好。
3、在root目錄下,輸入mkdir /zed,在zed下創建tool,將下載的xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin拷貝到tool目錄下。http://pan.baidu.com/s/1nvMWAHN
輸入cd /root/zed/tool
然后./xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin
此時系統會提示權限不夠,需要如下方式輸入
chmod 777 xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin
之后再輸入./xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin 彈出安裝界面,每次都點擊next即可。但是需要記住下圖中安裝的路徑。


4、安裝完成后需要設置環境變量
很多教程里面提到要下載ia32-libs的庫,輸入apt-get install ia32-libs。但我在實踐中發現,輸入這個會出現找不到庫的情況,不安裝也是可以進行編譯的。
設置環境變量的方法是:輸入export CROSS_COMPILE=arm-xilinx-linux-gnueabi-
export PATH=/root/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/bin:$PATH
這里,真的是不同的教程有不同的方法,需要注意的是大家一定在指定PATH的時候按照自己的安裝路徑設置,這兩行命令親測沒有問題,可以放心使用。
有的地方是arm-xilinx-linux-gnuadbi的寫法,這個應該是有人的筆誤最后流傳到網上,需要大家注意鑒別。
在此要感謝想要奔跑的蝸牛提供的方法,可以在宿主目錄下編輯 .bashrc文件,將設置環境變量的命令保存在.bashrc中,因為每次打開終端的時候,系統會自動運行.bashrc文件,所以保存設置過后,關閉終端再重新打開,以后就不用每次都設置環境了。
完成后輸入arm-xilinx-linux-gnueabi-gcc -v 會顯示相關信息

5、最后,使用交叉編譯鏈的時候只需輸入arm-xilinx-linux-gnueabi-gcc a.c -o a(a.c為待編譯文件,a為輸出文件)
將輸出文件拷貝到Zedboard即可運行。
需要注意的是環境變量每次啟動必須要重新設置。
