樹莓派交叉編譯環境和虛擬機nfs服…

實驗二:搭建樹莓派交叉編譯環境

一、   安裝arm-linux-gcc 變譯工具

在友善之臂的網上http://arm9download.cncncn.com/mini2440/linux/

arm-linux-gcc-4.4.3-20100728.tar.gz下載arm-linux-gcc4.4.3,並解壓到/usr/local/arm。接着按一下步驟進行:

A.   修改環境變量,把編譯器的路徑加入到PATH

/etc/profile 文件的最後加上 export PATH=$PATH:/usr/local

/arm/4.4.3/bin

修改/etc/bash.bashrc文件
在最後加上:
                export PATH=$PATH:/usr/local/arm/3.4.1/bin
                export PATH

使更新其作用:

# source /etc/bash.bashrc

# source /etc/bash.bashrc

B.   使新的環境變量生效

在終端中輸入 source /etc/profile

C.   查看編譯器的版本信息

在終端中輸入 arm-linux-gcc -v , 如果出現版本信息,說明安裝成功

D.   編寫hello.c程序,用 arm-linux-gcc –o hello hello.c 來編譯。用file命令查看hello文件的屬性,可以看到helloarm所能接受的可執行文件。

二、   配置nfs服務器

1.   pc上安裝nfs服務器

終端中輸入 sudo apt-get install nfs-kernel-server .

2.   配置pc上的ubuntu

由於我的ubuntu是安裝在虛擬機裏面的,所以要先把網絡的模式改爲橋接模式,

樹莓派交叉編譯環境和虛擬機nfs服務搭建

然後編緝ubuntu的有線連接。點擊右上角的網絡連接的圖標,Wire connection 修改IPv4Setting 如下:

樹莓派交叉編譯環境和虛擬機nfs服務搭建

然後用ifconfig命令查看eth0ip地址。在我的pc上,這個地址是169.254.8.175

接下來配置/etc/exports 文件,在文件末尾加上

/armfs 169.254.8.*(rw,sync,no_root_squash)

l  /armfs 爲服務器端共享目錄

l  *爲允許nfs服務器共享目錄的ip範圍,這裏表示限制ip地址和主機同一個網段。

l  sync表示同步寫入存儲器

l  no_root_squash表示客戶機享有主機的root權限

修改了文件後,還需要在/目錄下創建armfs文件夾,把權限改爲777

   sudo chmod 777 /armfs

然後重啓nfs服務使上面的配置生效。

3.   配置樹莓派的ip

把樹莓派和主機用網線連接。如果上面對ip地址作了限制的,在這裏需要通過 sudo ifconfig eth0 169.254.8.100 來設置樹莓派的ip地址。設置好後讓樹莓派和主機之間互ping一下,如果都能ping通,說明前面的設置應該正確。

4.   把共享文件掛載到樹莓派上

在樹莓派的終端中輸入 mount –t nfs –o nolock 169.254.8.175:

/armfs /mnt, pc上的/armfs 掛載到/mnt上。如果沒有出錯就表示成功了。

三、   編寫測試程序

1.   把前面編譯好的hello可執行文件放到/armfs中,在樹莓派中輸入./hello

2.   編寫浮點測試程序float_test.c,測試浮點數的加減乘除。

#include

void main()

{  

    float i = 3.14159;

    float j = 1.23451;

    float add, sub, mul, dif;

    add= i + j ;

    sub = i - j ;

    mul = i * j ;

    dif = i / j ;

    printf("i+j= %f\n", add);

    printf("i-j= %f\n", sub);

    printf("i*j= %f\n", mul);

    printf("i/j= %f\n", dif);

}

arm-linux-gcc –o float_test float_test.c 來編譯,編譯後的float_test放到/armfs中去,在樹莓派的/mnt目錄下,執行./float_test

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章