Chinaunix首页 | 论坛 | 博客
  • 博客访问: 57298
  • 博文数量: 20
  • 博客积分: 1571
  • 博客等级: 上尉
  • 技术积分: 145
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-01 11:10
文章存档

2012年(14)

2007年(6)

我的朋友

分类: LINUX

2007-12-05 00:36:03

1 建立根文件系统结构

#mkdir rootfs

#cd rootfs

#mkdir bin dev etc lib proc sbin tmp usr var

#chmod 1777 tmp

#mkdir usr/bin usr/lib usr/sbin

#mkdir var/lib var/lock var/log var/run var/tmp

#chmod 1777 var/tmp

2 准备链接库 (主要是拷贝交叉编译环境下的一些文件)

#cd ${OBJ_LIB}/lib (${OBJ_LIB}是交叉编译环境的目录)

#for file in libc libcrypt libdl libm \

>libpthread libresolv libutil

>do

>cp $file-*.so /home/fortis/rootfs/lib

>cp -d $file.so.[*0-9] /home/fortis/rootfs/lib

>done

#cp -d ld*.so* /home/fortis/rootfs/lib

3 使用busybox制作系统应用程序

3.1 下载busybox()并解压。

3.2 进入解压后的目录,配置Busybox

更改目录下的Makefile文件。更改地方为:

ARCH   ?= arm                      //根据需要配置不同的架构

CROSS_COMPILE ?=arm-xscale-linux-  //就是交叉编译工具

然后进入下面的工作:

在配置过程中要注意的是加载根文件系统的安装路径(在其中的一项中配置,现在想不起来了,自己去找找吧)

$make menuconfig

 具体的配置过程就不说了,根据不同需要进行选择就可以了。

$make

$make install

4 准备所需的设备文件

可以直接拷贝宿主机上的,或者自建几个就是。

#cd rootfs/dev

#mknod -m 600 console c 5 1

5 在rootfs/目录下创建linuxrc文件

内容如下:

$ vim rootfs/linuxrc

#!/bin/sh

echo "Hello linux ,gggggg"

exec /sbin/init

然后修改权限:chmod 775 linuxrc

6 制作initrd映象文件

#mkdir initrd (initrd目录和rootfs目录同级) 

#dd if=/dev/zero of=initrd.img bs=1k count=8192

#/sbin/mke2fs -F -v -m0 initrd.img

#mount -o loop initrd.img initrd

#cp -av rootfs/* initrd

#umount initrd

#gzip -9 initrd.img

阅读(1393) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~