交叉编译linux镜像,交叉编译环境,内核映像和文件系统生成

资源:

arm-linux-gcc-3.4.1.tar.bz2 (光盘提供)

linux2.6.14-dma-2440.tar.gz (光盘提供)

1. 解压文件(假设这两个文件都在$USER/目录下)tar jxvf arm-linux-gcc-3.4.1.tar.bz2 #在当前目录下生成一个usr

tar zxvf linux2.6.14-dma-2440.tar.gz2. 建立交叉编译环境

(as root)mkdir /usr/local/arm

chown $USER /usr/local/arm

chmod 777 /usr/local/arm #确保非root用户可以修改其中的内容(as $USER)mv ~/usr/local/arm/3.4.1 /usr/local/arm

3. 编译内核映像

cd linux2.6.14-dmatek2440

make clean

make menuconfig #这一步要保存起内核映像的config文件

make zImage

4. 查看内核映像ls -al arch/arm/boot

如果其中有得到zImage,并且时间吻合的话,那就表示编译是成功的

5. cramfs文件系统

资源:rootdma.cramfs (光盘)

知识点:

Make

a CramFs (Compressed ROM File System) mkcramfs lets you construct a

CramFs (Compressed ROM File System) image from the contents of a given

directory. Cram file systems are used for Debian INITRD images.

文件系统介绍:http://dev.yesky.com/74/8123574.shtml

下载cramfs-1.1:

载完后将后缀改为.tar.gz

解压 :tar zxvf sf_200482122123.tar.gz

cd cramfs-1.1

make

这样就可以生成mkcramfs了

链接:ln -T ~/cramfs-1.1/mkcramfs /usr/bin/mkcramfs (as root)

chmod 777 /usr/bin/mkcramfs6. 文件系统的制作

资源:rootdma.cramfs (光盘)

建立环境mkdir rootfs

mkdir rootfs/roms

mkdir rootfs/tmp拷贝rootdma.cramfs到rootfs目录下,并挂载

(as root)mount rootfsdma.cramfs roms -o loop

为roms 目录下的内容创建档案tar cvf 1.tar roms/

将档案解压到tmp/ 下mv 1.tar tmp/

umount roms (as root)

cd tmp

tar xvf 1.tar解压时有提示,是否有错???tar: roms/usr/lib:不可信的旧时间戳 1970-01-01 08:00:00

tar: roms/usr/bin:不可信的旧时间戳 1970-01-01 08:00:00

tar: roms/usr/Qtopia/qtopia-free-1.7.0/bin:不可信的旧时间戳 1970-01-01 08:00:00

tar: roms/usr/Qtopia/qtopia-free-1.7.0:不可信的旧时间戳 1970-01-01 08:00:00

tar: roms/usr/Qtopia:不可信的旧时间戳 1970-01-01 08:00:00

tar: roms/usr:不可信的旧时间戳 1970-01-01 08:00:00

tar: roms/sbin:不可信的旧时间戳 1970-01-01 08:00:00

tar: roms/etc/init.d:不可信的旧时间戳 1970-01-01 08:00:00

tar: roms/etc:不可信的旧时间戳 1970-01-01 08:00:00

tar: roms:不可信的旧时间戳 1970-01-01 08:00:00-------------------------

注:查閱 Kernel source 裡 Documentation/filesystems/cramfs.txt 這份文件,可以找到以下這段說明:No timestamps are stored in a cramfs, so these default to the epoch

(1970 GMT).  Recently-accessed files may have updated timestamps, but

the update lasts only as long as the inode is cached in memory, after

which the timestamp reverts to 1970, i.e. moves backwards in time.

%>所以遇到「不可信的旧时间戳 1970-01-01 08:00:00」這個訊息可以忽略它,沒有影響的。

---------------------------生成文件系统mkcramfs roms rootfs_dma.cramfs

$ls

drwxrwxr-x  3 qspy qspy     4096 07-04 18:00 .

drwxrwxr-x  4 qspy qspy     4096 07-04 15:19 ..

-rw-r--r--  1 root root 61061120 07-04 15:19 1.tar

drwxr-xr-x 12 qspy qspy     4096 1970-01-01 roms

-rw-rw-r--  1 qspy qspy 26370048 07-04 18:00 rootfs_dma.cramfs

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值