天天看點

在Ubuntu上建立Arm Linux 開發環境

我使用的是友善2410的闆子,以前都是用Fedora,現在家裡的電腦被我轉為Linux專用的了,裝的是Ubuntu。但是嵌入式還是要玩的,在裝載過程中也遇到一些小麻煩。在此記錄一下,一來自己比較健忘,二來也希望能給一些沒弄過的人一點啟示。

目的:

把ARM linux的交叉開發環境,kernel, filesystem, bootloder安裝,并配置,使其可以編譯bootloder, kernel, 可以nfs更新檔案系統;

資源:

代碼:

arm-linux-toolchains.tgz

matrix5-kernel-v5.5.tgz

vivi.tar.gz

Jflash.tgz

root-for-nfs-v5.5.tgz

規劃:

交叉編譯器裝在:/usr/local/

kernel, bootloder放在: /home/volans/arm/

用于啟動的nfs檔案系統放在:/home/armnfs/

準備工作:

代碼:

sudo mkdir /home/armnfs

sudo chmod 777 /home/armnfs

mkdir ~/arm

上面前兩句的目的是在/home下建立armnfs目錄,為了開發的友善,把這個目錄設成所有使用者可rwx。

然後把上面提到的資源全部拷貝到~/arm/下。

安裝配置:

代碼:

安裝标準的C開發環境,由于Ubuntu安裝預設是不安裝的,是以需要先安裝一下:

sudo apt-get install gcc g++ libgcc1 libg++ make gdb

代碼:

安裝交叉編譯器

cd /

sudo tar zxvf /home/volans/arm/arm-linux-toolchains.tgz

請在執行完成後檢視是否存在/usr/local/arm檔案夾。

把交叉編譯器的路徑加入到PATH,以友善使用:

sudo vi /etc/bash_bashrc

在後面加入如下代碼:

if [ -d /usr/local/arm ] ; then

    PATH=/usr/local/arm/2.95.3/bin:"${PATH}"

fi

代碼:

解壓bootloader, kernel和flash燒寫工具Jflash

cd ~/arm

tar zxvf matrix5-kernel-v5.5.tgz

tar zxvf vivi.tar.gz

tar zxvf Jflash.tgz

代碼:

解壓用于啟動的NFS檔案系統

cd /home/armnfs

tar zxvf /home/volans/root-for-nfs-v5.5.tgz

代碼:

啟動NFS服務

請參照我前幾篇文章,關于啟動NFS伺服器的相關内容。

在/etc/exports中加入如下内容:

/home/armnfs/root    192.168.0.69(rw)

代碼:

安裝ncurse

基本上上述配置已經基本可以滿足開發需求,但現在去編譯kernel 或vivi的時候,運作make menuconfig會提示ncurses找不到,這是因為menuconfig 用到了ncurses庫。解決辦法如下:

sudo apt-get install ncurses-dev

代碼:

安裝minicom序列槽工具

sudo atp-get install minicom

然後配置:

sudo minicom -s

配置和友善的文檔就一樣了,我就不多廢話。

其他的基本就沒什麼了,有兩點要注意,nfs的共享目錄是/home/armnfs/root, 是以在目标版使用NFS啟動的時候把共享目錄換成這個。 

繼續閱讀