嵌入式Linux开发环境搭建

849 阅读3分钟

前言

  以JZ2440开发板为目标板,本文将介绍对其进行开发前,所需要做的准备工作,也就是开发环境的搭建。

开发环境的搭建

  嵌入式LINUX的开发一般在windows系统、LINUX系统和开发板这三者上同时进行,一般操作流程是在windows系统上进行程序开发,然后在linux系统上进行程序的编译链接,最后在开发板上进行程序的运行。作为新手第一步就是可以在三者之间传输数据,这也是很头疼的一步。

PC机、虚拟机和开发板三者互ping

  首先我用的电脑上网用的是无线网卡上外网,而用有线网卡作为三者的连接的中介虚拟机我用的是VMware Workstation 15.5,ubuntu系统用的是百问网给的镜像。

  • 第一步:选择虚拟机编辑器,将其设置为桥接模式,桥接至PC机的有线网卡。 虚拟机编辑器
  • 第二步:在windows系统命令行窗口下,输入指令ipconfig,查看有线网卡ip地址,我的是196.254.51.57。 PC机有线网卡IP地址
  • 第三步:将ubuntu系统的ip地址,设置和PC机同一网段。输入命令:sudo ifconfig ens33 169.254.51.58 (这里的ens33是你需要修改的网卡名字,每个系统可能不一样) 修改完成后,输入命令:ping 169.254.51.57。发现虚拟机能ping通PC机。
  • 第四步:用网线和串口线将开发板连接至PC机上,此时的开发板里应该已经有LINUX系统。然后通过MobaXterm工具可进入开发板系统进行调试。
  • 第五步:用同样的方法将开发板的ip地址设置成与PC机同一网段,但是ip地址不能被占用,然后通过开发板ping虚拟机,发现可ping通。

PC机与虚拟机,虚拟机与开发板的文件互传

三者可以相互ping通后,接下来要做的事情就是文件的互传了。

PC机与虚拟机的文件互传

  • 方法一:直接用鼠标将windows下的文件拖至虚拟机内,这种方法很简单,但是通常不是很方便。
  • 方法二:借助FileZilla软件,在 1处,输入虚拟机的相关信息,然后点快速连接,连接成功后,2处就是windows系统下的目录,而3处就是虚拟机的目录,可以通过鼠标的拖拽或者双击想要移动的文件进行文件在两个系统下的传输。

虚拟机与开发板的文件互传

本文用的是nfs(网络文件系统)进行虚拟机与开发板之间的文件互传。首先要在虚拟机系统上配置nfs服务器。

  • 指令:vim /etc/exports;然后在文件中添加
    /work/nfs_root/ *(rw,sync,no_root_squash) 。意思是将该目录作为需要共享文件的目录
  • 回到命令行,输入指令:sudo /etc/init.d/nfs-kernel-server restart;重启nfs服务器
  • 进入开发版命令行,输入指令:mount -t nfs -o nolock 169.254.51.58:/work/nfs_root /mnt;前者是虚拟机下的目录,后者是开发板下的目录。输入指令后查看开发板/mnt目录下的文件和虚拟机/work/nfs_root下的文件一致。

遇到问题

**问题一:**在操作/mnt下的文件时出现 nfs: server 169.254.51.58 not responding, still trying 错误。

**解决方法:**通过语句mount -t nfs -o nolock,rsize=1024,wsize=1024 169.254.51.58:/work/nfs_root /mnt 去挂载NFS目录。