背景:因?yàn)樵谠拥慕坛讨杏袕?qiáng)調(diào)最新的Linaro gcc編譯完uboot后無法運(yùn)行的問題,所以原子采用4.9,那我們就沿用下。
Linaro gcc有兩個版本: gcc-linaro-4.9.4-2017.01-i686_arm-linux-gnueabihf.tar.tar.xz 和 gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz,
第一個是針對 32 位系統(tǒng)的,第二個是針對 64 位系統(tǒng)的。大家根據(jù)自己所使用的 Ubuntu 系統(tǒng)類型選擇合適的版本,比如我安裝的 Ubuntu 20.04 是 64 位系統(tǒng),因此我要使用 gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz。
這兩種交叉編譯器我們已經(jīng)下載好放到了開發(fā)板光盤中,路徑: 5、開發(fā)工具->1、交叉編譯器。我們要先將交叉編譯工具拷貝到 Ubuntu 中,當(dāng)然你們也可以去https://releases.linaro.org/components/toolchain/binaries/下載各個版本試一下:
我放置的路徑為:~/project/board/yuanzi/imx6ull/tool
解壓
sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz
環(huán)境變量設(shè)置
touch env.sh
vim env.sh
編輯為以下內(nèi)容:
#!/bin/bash
export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-
export PATH=/home/zhongjun/project/board/yuanzi/imx6ull/tool/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin:$PATH
NOTED:根據(jù)自己的路徑有所差別,我把路徑放在PATH前面是因?yàn)槲矣衅渌木幾g鏈
使能環(huán)境變量
source env.sh
查看是否配置成功
arm-linux-gnueabihf-gcc -v
顯示4.9.4證明我們就配置成功了
sudo apt-get install nfs-kernel-server rpcbind
可以看到IP為10.88.110.31,這里記住IP,后續(xù)會用到
編譯uboot跟Kernel下載到開發(fā)板中,參照:
https://wlink.blog.csdn.net/article/details/128590747
然后在開發(fā)板網(wǎng)線
然后ifconfig可以看到eth0有了ip
我們試下是否能ping通ubuntu
mount -t nfs -o nolock,nfsvers=3,vers=3 10.88.110.31:/home/zhongjun/project/board/yuanzi/imx6ull/nfs /mnt/nfs
其中會附帶ubuntu的ip地址,然后會附帶掛載的路徑,以及imux6ull的映射路徑
執(zhí)行成功后,我們就可以在/mnt/nfs中看到