交叉编译环境搭建

时间:2021-04-22 09:28:22

【1】交叉编译(跨平台编译)
定义:将编译好的镜像文件,应用程序,运行在与宿主系统不同平台的开发板上

【2】环境搭建
1)tftp服务器
tftp 是用来下载远程文件的最简单网络协议,它基于udp协议而实现

嵌入式 linux 的 tftp 开发环境包括两个方面:
一是 linux 开发主机端的 tftp-server 支持,
二是嵌入式目标系统的 tftp-client 支持

实现机制:需要网络连接
需要安装 tftp 服务器

功能:可以将编译好的内核下载到开发板


检测:sudo dpkg -s tftpd-hpa

在线下载:sudo apt-get install tftpd-hpa tftp-hpa

tftp服务器服务端配置:
sudo vi /etc/default/tftpd-hpa

TFTP_USERNAME="tftp" tftp服务器的名字
TFTP_DIRECTORY="/tftpboot" tftp服务器传输目录
自行根目录下创建 sudo mkdir tftpboot
修改权限 sudo chmod 777 tftpboot
TFTP_ADDRESS="0.0.0.0:69" tftp服务器端口号
TFTP_OPTIONS="-c -s -l" -c create 可上传文件
-s server
-l listen

重启tftp服务器:
sudo service tftpd-hpa restart

2)nfs服务器
NFS 服务主要的任务是把本地的一个目录通过网络导出,其他计算机可以远程访问该目录并

使用条件:网络连接

nfs服务器服务端配置:
sudo vi /etc/exports
添加:
/source/rootfs/ *(rw,sync,no_subtree_check,no_root_squash)

/source 共享目录
自行创建 sudo mkdir source
修改权限 sudo chmod 777 source
/rootfs 根文件系统的名称

rw 读写权限
sync 同步写入内存或硬盘
no_subtree_check 如果共享子目录,不检查父目录权限
no_root_squash 如果客户端是root的话,那么他对这个目录具有root的权限


启动nfs服务器:
sudo /etc/init.d/nfs-kernel-server restart