硬件: imx6ull_pro开发板
平台:ubuntu20.04(默认nfs已经安装)
利用imx6ull开发板编译hello.c文件
1.hello.c由windows环境下编写
2.利用Filezilla将hello.c上传到ubuntu20.04(nfs服务端)
3. 在nfs服务端利用交叉编译工具链编译hello.c
此处的-o表示的是输出一个文件,文件名是he。而hello.c是源文件,用来编译的。
arm-buildroot-linux-gnueabihf-gcc -o he hello.c
4.在nfs服务端将编译后生成的he文件复制到nfs_rootfs文件夹
sudo cp he /home/book/nfs_rootfs
5.通过Mobaxterm和串口连接,登录ARM(进入后有时候得修改eth0的ip)
6.在nfs客户端,也就是ARM板子。将服务端的nfs文件夹挂载到ARM的mnt文件夹下面。
mount -t nfs -o nolock,vers=3 192.168.5.11:/home/book/nfs_rootfs /mnt
7.在ARM系统下,进入到挂载nfs的目录(我这里是mnt)
cd /mnt
8.在该路径下,就可以编译he文件。
./he
关于首次挂载nfs时,一直报 connection refused或者permission denied的解决方法(以下操作均在ubuntu20.04下执行)
1.下载nfs包
sudo apt install nfs-kernel-server
2.下载后应创建服务器共享文件。也就是上文的nfs_rootfs文件
sudo mkdir /home/book/nfs_rootfs
3.修改该目录的拥有者和组
sudo chown book:book /home/book/nfs_rootfs/
4. 修改服务器配置文件/etc/
sudo vim /etc/exports
在该配置文件添加如下内容:
/home/book/ *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)
也就是如下图所示:
5.保存重启配置文件
sudo service nfs-kernel-server restart