理解:第一步:烧录镜像。第二步:建立编译环境(一般是PC端的Linux虚拟机)和板卡端的文件连接。因为要传文件,一般用挂载的方法。第三步:软件程序的编译与部署。
第一步:烧录镜像步骤
参考官方文档,http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-5-plus.html
进行烧录。一般有烧录到TF卡/EMMC卡。千万注意:电压和电源;以及不要热插拔。
第二步:挂载文件nfs
2. 挂载NFS网络文件系统 — [野火]嵌入式Linux基础与应用开发实战指南——基于i.MX6ULL开发板 文档 (embedfire.com)
踩过的坑:新建的文件夹没有在下面的文件夹中添加在Linux虚拟机上添加如下内容
#以下命令在主机上运行,可用gedit替换vim
sudo vim /etc/exports
在/etc/exports文件末尾添加如下语句并保存,注意如下语句写到/etc/exports文件是在同一行。
#把以下内容添加至/etc/exports文件末尾,注意以下内容处于同一行
#以下内容的IP地址和uid,gid需要根据自己的环境进行修改
/home/ebaina/nfsroot *(rw,sync,no_root_squash)
新建一行之后更新配置。修改完/etc/exports文件并保存后,可使用exportfs命令更新配置:
#以下命令在主机上运行
sudo exportfs -arv
该命令的参数说明如下:
-
-a:全部mount或umount文件/etc/exports中的内容。
-
-r:重新mount文件/etc/exports中的共享内容。
-
-u:umount目录。
-
-v:在exportfs的时候,将详细的信息输出到屏幕上。
若配置正常,该命令执行后会列出共享的目录项,本示例的执行结果见下图。
注意:
如果出现以下错误,可以添加参数 -o nolock
mount -t nfs 192.168.1.33:/home/ebaina/ubunturoot /mnt -o nolock
3.软件程序的编译与部署
首先理解系统之间的差异,可以通过gcc -v来体会。分别在PC端的虚拟机中Linux,在终端里,输入gcc -v 得到如下结果:
在板卡端输入以上信息,得到以下结果:
其他可能的操作:
1. 格式化SD卡。
https://www.sdcard.org/downloads/formatter/eula_windows/SDCardFormatterv5_WinEN.zip2
2.配置静态ip
1.查看网卡设备
sudo ifconfig
这里假设我的网卡设备是 eth0 和 eth1
2. 打开配置文件
sudo vi /etc/network/interfaces
3.向配置文件添加如下内容
auto eth0
iface eth0 inet static
address 192.168.100.2
netmask 255.255.255.0
auto eth1
iface eth1 inet static
address 192.168.100.3
netmask 255.255.255.0
4.保存并退出
Esc
:wq
5.重启网络服务
sudo systemctl restart networking
6.确认ip已生效
sudo ifconfig
3.开发板上网问题
核心思想是网线连接,wifi共享给以太网。从而使开发板可以上网。
参考链接:嵌入式linux开发板+vscode,配置gdb调试环境_vscode直接gdb嵌入式单板-CSDN博客