IP地址配置:IP地址分为四段号码,前三段为网络地址 最后一段为计算机地址。 配置的是时候要保证前三段一致 最后一段不能一样。
子网掩码和网关 也要保持一致。
因为网段需要保持一致 否则网络无法连通
首先:
什么是交叉编译:交叉编译是在一个平台上生成另一个平台上的可执行代码
为什么要交叉编译:
不同的开发环境和执行环境,都需要不同的编译工具
我们电脑是 X86架构 我们的开发板是ARM架构 在X86架构下只能执行X86的可执行代码 arm也一样 ;我们在X86架构下直接编译的可执行文件 在ARM架构下无法执行
那既然我们需要ARM下的可执行文件 为什么不在ARM架构下编译呢
也就是说为什么不在目标板上编译代码:
目标板资源非常有限 其硬件资源一般都只能满足特定功能需求,难以支撑开发环境的运行需求。如果在目标板上编译的话 会浪费很多资源 增加成本 百害而无一利
所以我们要在我们的电脑上 提前编译好ARM的可执行文件 然后下载到目标板上
编译的内容:uboot启动代码 、 内核
tftp服务:文本文件传输协议 用来传输 ubootpak.bin、uImage镜像文件
nfs服务:网络文件共享系统 (就是用来挂在根文件系统)
uboot移植:
1、配置交叉编译工具链
打开Makefile文件 在makefile文件中配置交叉编译工具链 这个文件用于代替gcc
为什么要代替gcc 因为编译u-boot需要很多.c和.h文件 如果用gcc编译 需要一个一个的输入 非常麻烦 浪费时间 所以用Makefile代替gcc 作为make的配置文件 非常方便
配置好交叉编译链之后
1、删除u-boot 源码中间文件
2、 配置u-boot源码 支持fs6818开发板
3、编译u-boot源码 生成ubootpak.bin文件
4、将ubootpak.bin下载到开发板中
接下来就是运行uboot代码
在这个过程中 因为开始运行的时候 开发版中什么都没有 所以我们需要 把ubootpak.bin放在sd卡中 先用sd卡启动uboot 到FS6818界面 再把tftpboot文件夹中的ubootpak.bin文件 使用tftp命令烧写到内存中
但是内存掉电丢失 下一次再开机的时候文件就丢失了 所以我们需要把ubootpak.bin文件下载到flash中 flash掉电不丢失所以下次再启动的时候文件依然存在
移植完uboot之后
开发板就可以启动内核了
Linux内核移植:
1、配置交叉编译工具链
2、菜单选择方式配置内核
因为我们的系统在用的时候还需要各种驱动 但是这些驱动文件 如果都下载到内存中 会占用很大的空间 根据我们需要的功能 我们用到什么驱动就把什么驱动配置到内核中 这样可以很好的节约空间 节省资源
3、配置好内核后 编译内核产生uImage内核镜像
4、将uImage放在 tftp下载文件存放路径下
5、通过tftp方式直接下载到内存中 就可以启动内核了
根文件系统移植:
通过nfs方式直接挂载根文件系统
现在系统移植就移植完了



