JFFS2文件系统的制作.docVIP

  • 6
  • 0
  • 约8.77千字
  • 约 9页
  • 2016-02-25 发布于江苏
  • 举报
JFFS2文件系统的制作.doc

使用新的busybox-1.13.3制作jffs2文件系统由于之前使用的文件系统中的busybox是1.5版本,结果很多工具都没有完善,这一次,在上下载了当前的最新稳定版本,busybox-1.13.3来制作,总算搞定了,但也出现了一些问题,贴出我的过程跟大家分享一下,也给有需要的人一点帮助,希望如此。 全文如下: 2009-3-26 陈纪煌 今天尝试了移植新的文件系统,使用的是busybox-1.13.3稳定版本 由于之前所使用的版本是busybox-1.5.0,结果发现很多东西无法支持,比如nfs无法挂在,并且clear等工具无法正常使用 所以下了一个新的版本进行尝试 1.解压该包 tar xf busybox-1.13.3.tar.bz2 cd busybox-1.13.3 2.修改Makefile 找到 CROSS_COMPILE ?= 修改为CROSS_COMPILE ?=arm-linux- 找到 ARCH ?= $(SUBARCH) 修改为 ARCH ?= arm 3.进行默认配置 make defconfig 4.对配置信息进行修改 make menuconfig 检查Miscellaneous Utilities--- ??? taskset 是否已经去除 同时设置如下: Busybox Settings --- ??? ??? Build Options --- ??? ??? ??? [*]Build BusyBox as a static binry (no shared libs) ??? ??? ??? ()Cross Compiler prefix=/usr/local/arm/3.4.1/bin/ ??? ??? Installation Options --- ??? ??? ??? [*]Dont use /usr ??? ??? ??? BusyBox installation=${PROJECT}/rootfs/rootfs_1.13??? ??? 这几个设置对于之前做过相关工作的人来说是比较熟悉的,都很容易知道为何如此做。 编译出错 修改networking/interface.c 818行改为 .type = -1 这样编译就能通过。我使用gcc来编译是能通过的,但是用arm-linux-gcc编译就无法通过,应该是编译起的函数库的问题。因为报错信息是关于网络协议中一个宏的定义,就好像socket中的AF_INET差不多。 编译结束后,在${PROJECT}/rootfs/下建立rootfs_1.13文件夹 并在其中建立如下路径 mkdir bin sbin lib etc dev mnt usr/bin usr/sbin usr/lib proc sys -p 并执行make install则将busybox安装 5.加入运行需要的库文件 写了一个脚本,把这个放在/usr/local/arm/3.4.1/arm-linux/lib/下执行,目的是将一些程序运行时需要的函数库复制到目标文件系统的lib路径下 =========以下是脚本内容=================== #!/bin/bash #You should put this file cp.sh in $(CROSS-COMPILE)/lib/ ROOTFS_LIB=${PROJECT}/rootfs/rootfs_1.13/lib/ for file in libc libcrypt libdl libm libpthread libresolv libutil do cp $file-*.so ${ROOTFS_LIB} cp -d $file.so.[*0-9] ${ROOTFS_LIB} done cp -d ld*.so* ${ROOTFS_LIB} #end script =============脚本结束======================== 6.在${PROJECT}/rootfs/rootfs_1.13/etc/下建立如下文件或者路径 vi fstab 内容是: proc /proc proc defaults 0 0 sysfs /sys sysfs defaults 0 0 vi priflie 内容是: #!/bin/sh #You should put this file profile into your $(CONFIG_PREFIX)/etc/ echo Set seaech library in /etc/profile export LD_LIBRARY_PATH=/lib:/usr/lib echo Set user path

文档评论(0)

1亿VIP精品文档

相关文档