嵌入式linux系统移植(一)

时间:2022-02-12 08:31:40

内容:
   交叉编译环境
   bootloader功能子系统
   内核核心子系统
   文件系统子系统
要点:
  搭建交叉编译环境
  bootloader的选择和移植
  kernel的配置、编译、移植和调试
  根文件系统的制作


移植的基本步骤:
  确定目标机、主机的连接方式
  安装交叉编译环境
  搭建主机-目标机的数据传输通道
  编写三大子系统
  烧写测试


目标机和主机的连接方式:

  1. UART异步串行通信接口(串口):速率低、实用性强
  2. USB串行通信接口:速度快、驱动要移植修改
  3. TCP/IP网络通信接口:速率快(10/100Mbps)、驱动要一直
  4. Debug Jtag调试接口:方便快捷、价格很高

安装交叉编译器:
安装芯片厂商编译好的工具链
arm-none-linux-gnueabi-  --->arm-linux :开源的ARM下的linux平台的交叉编译环境
arm-none-eabi                                       :不支持操作系统(无操作系统下的交叉编译环境)
提供交叉编译器的公司:codesourcery       
自己动手编译交叉工具链(没有特殊要求,不推荐)


搭建主机-目标机的数据传输通道
网络相关服务器的配置:TFTP、NFS
NFS(网络文件系统)系统和系统之间的文件挂载


交叉编译工具集:
交叉编译作用:目标机和主机不在同一平台,目标机配置一般比较低,编译调试不太可行
查看文件编译的结果的运行环境:file + 文件名 如file build
安装交叉编译环境:
第一步:解压arm-linux-gcc....
第二步:添加PATH环境变量(环境变量文件:etc/environment),之后执行source /etc/environment更新环境变量
问题:安装过后,输入arm-linux-gcc -v显示command not found
解决:sudo apt-get install libc6:i386
           sudo apt-get install  lib32z1