1. 交叉编译链
背景:因为在原子的教程中有强调最新的Linaro gcc编译完uboot后无法运行的问题,所以原子采用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 位系统的,第二个是针对 64 位系统的。大家根据自己所使用的 Ubuntu 系统类型选择合适的版本,比如我安装的 Ubuntu 20.04 是 64 位系统,因此我要使用 gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz。
这两种交叉编译器我们已经下载好放到了开发板光盘中,路径: 5、开发工具->1、交叉编译器。我们要先将交叉编译工具拷贝到 Ubuntu 中,当然你们也可以去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
环境变量设置
touch env.sh
vim env.sh
编辑为以下内容:
#!/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:根据自己的路径有所差别,我把路径放在PATH前面是因为我有其他的编译链

使能环境变量
source env.sh
查看是否配置成功
arm-linux-gnueabihf-gcc -v

显示4.9.4证明我们就配置成功了
2 nfs安装
2.1 ubuntuan安装指令
sudo apt-get install nfs-kernel-server rpcbind
2.2 ubuntu ip地址

可以看到IP为10.88.110.31,这里记住IP,后续会用到
2.2 imx6ull端
2.2.1 uboot kernel下载
编译uboot跟Kernel下载到开发板中,参照:
https://wlink.blog.csdn.net/article/details/128590747
2.2.2 开发板接线
然后在开发板网线

2.2.3 开发板ping ubuntu
然后ifconfig可以看到eth0有了ip

我们试下是否能ping通ubuntu

2.2.4 挂载nfs
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的映射路径
执行成功后,我们就可以在/mnt/nfs中看到

