嵌入式实验五分析.doc
文本预览下载声明
根文件系统移植实验
实习题目
针对arm2410cl的根文件系统移植
实习目的
了解arm2410cl根文件系统结构,掌握其生成步骤,了解busybox、mkcramfs 工具
实习内容
配置并启动redhat的samba服务(具体步骤见实验四),把从110系统下载的实验所需压缩包复制到redhat中。
在redhat中用 tar xjvf busybox-1.00-pre10.tar.bz2 解压busybox工具压缩包。切换到解压后的busybox-1.00-pre10目录,再执行make menuconfig 命令,根据具体需要配置busybox编译配置。
运行make menuconfig,配置busybox
图1 busybox配置界面
修改编译工具链的libc.a文件,先备份原文件。创建一个链接脚本,将libnss_files.a, libnss_dns.a, libresolv.a都加入到脚本中。链接文件内容如下图所示:
图2 libc.a链接文件
在busybox-1.00-pre10 目录下,执行 make clean命令,清理上次编译的中间代码文件。再执行 rm –f .depend 删除旧的依赖文件。最后执行make 命令编译。
编译完成后,执行make PREFIX=../root install,生成安装文件。完成后执行 cp –rf /arm2410cl/rootfs/target ./ 命令,将target文件夹复制到busybox-1.00-pre10目录,cd target切换到busybox-1.00-pre10下的target目录,删除无用的链接文件。
返回上一级到 busybox-1.00-pre10目录,执行mkcramfs target/ root.cramfs ,建立根文件系统。
完成后将得到的root.cramfs通过配置好的samba服务复制到windows中。
启动开发版,在超级终端配置ip使得其和windows在同一网段,服务器ip为windows的ip。同时在windows下配置tftpd32.
图3 tftpd32配置
配置完成后,在超级终端执行tftp flash root root.cramfs命令烧写根文件系统。
实习总结
根文件系统实习比较麻烦,要解决依赖关系,这一步花了比较长的时间。对arm2410cl开发板的根文件系统及生成过程有了更深一步的理解。
显示全部