【内核笔记】嵌入式平台搭建及根文件系统的制作

1.1 安装交叉编译器 arm-linux-gcc-4.3.2
Step1:进入虚拟机中找到你上步自建的目录中,找到 arm-linux-gcc-4.3.2.bz2 文件:

cd /home/edu/share/linux_platform2.6.35.7/

Step2:查看自己的虚拟机是否安装交叉编译工具链:
#echo KaTeX parse error: Expected 'EOF', got '#' at position 43: …2: 用于交叉编译各种镜像) #̲mkdir –p /usr/l…PATH
#source ~/.bashrc ( 使环境变量设置立即生效)
1.2 配置编译 u-boot
Step1:在虚拟机中解压 u-boot-2014.07.tar.bz2 文件
#tar jxv7.tar.bz2
Step2:进入解压后的文件目录中
#cd u-boot-2014.07
Step3:编译前清除旧的配置文件
#make distclean
Step4:生成新的配置文件
#make x6818_config
Step5:编译生成 u-boot 可执行文件
#make
在当前目录下会生成一个 ubootpak.bin 的文件
将 tools 目录下生成的 mkimage 文件拷贝到/bin 目录中,后面用于制作 u-boot 所需格式
的内核
#cp u-boot-2014.07/tools/mkimage /bin ( 这一步也可以不做,主要用于生成 uImage)
1.3 配置编译内核
Step1:在虚拟机中解压 kernel6818_3.4.39.tar.gz 文件
#tar zxvf kernel6818_3.4.39.tar.gz
Step2:进入解压后的文件目录
#cd kernel-3.4.39
Step3:清除旧的内核配置文件
#make distclean
Step4:重命名内核配置文件
#cp sp_config_2017.03.20 .config
Step5:配置内核
#make menuconfig
注意 :如果执行“make menuconfig”提示找不到“ ncurses 库 ”,那么执行更新命令:
sudo apt-get install libncurses5-dev(如果无法连接到172.20.220.71说明之前学习网络课程
将虚拟机设置成了静态 IP,首先将 IP 设置为自动获取,然后禁用一下虚拟机网络连接再启
动即可)
由于采用的是配置好的脚本,因此对配置界面不用做任何修改,直接保存退出即可。
Step6:生成内核镜像文件
#make uImage 或 make uImage -j2
在 arch/arm/boot 下会生成 uImage 文件
Step7:进入内存镜像所在目录
#cd arch/arm/boot
Step8:拷贝 temp.tar.bz2 到内存镜像所在目录 arch/arm/boot 并解压
#tar jxvf temp.tar.bz2
Step9:进入解压出来的 temp 目录
#cd temp
Step10:执行脚本生成 boot.img 下载镜像文件
#./mkboot.sh

1.4 Ext4 根文件系统的制作
Ext4 格式的根文件系统是可读可写的文件系统
Step1:解压根文件系统文件
#tar jxvf gtk_rootfs.tar.bz2
Step2:给 mkyaffs2image 添加可执行权限
#chmod +x mkfs_ext4/make_ext4fs
Step3:拷贝 mkyaffs2image 文件到/bin 下
#sudo cp mkfs_ext4/make_ext4fs /bin
Step4:生成根文件系统镜像
#make_ext4fs -s -l 314572800 -a root -L linux gtkfs.img gtk_rootfs

镜像烧写方法:
执行步骤:
Step1: 首先连接上 USB 线,串口线,电源线
Step2: 然后给开发板上电,并进入 U-boot 命令行模式
Step3: 在 U-boot 命令行中输入 fastboot 命令后点击回车键
右键编辑上面文件夹中的"sp_linux_image_down.bat"(方框标识的批处理文件),将其内容由
fastboot flash ubootpak …/sp_linux_image/ubootpak.bin
fastboot flash boot …/sp_linux_image/boot.img
fastboot flash gtkfs …/sp_linux_image/gtkfs.img
fastboot flash userdata …/sp_linux_image/userdata.img
fastboot flash cache …/sp_linux_image/cache.img
fastboot flash recovery …/sp_linux_image/recovery.img 改为:
fastboot flash ubootpak ./all_image/ubootpak.bin
fastboot flash boot ./all_image/boot.img
fastboot flash gtkfs ./all_image/gtkfs.img
其他内容使用 rem 注释掉即可
保存关闭
双击批处理文件"sp_linux_image_down.bat",这时会在我们的 u-boot 命令行中由串口打印出相关信息

猜你喜欢

转载自blog.csdn.net/Flywithdawn/article/details/108792514
今日推荐