1、准备交叉编译工具链
本处使用的内核交叉编译工具链是cross-3.3.2.tar.bz2,解压后,工具链所在路径为:/usr/local/。
2、解压内核源代码。
本处编译内核需要以root权限来进行。本文的内核解压到/usr/src/local/home\9315\linux-2.4.21-crus-1-4-3。
3、修改Makefile进行交叉编译
顶层根目录的Makefile是整个内核配置、编译的总体控制文件。在交叉编译的过程中,需要修改此文件中的两方面的内容:体系结构“ARCH”和交叉编译器“CROSS_COMPILE”。
ARCH:=arm
CROSS_COMPILE = /usr/local/arm/bin/arm-linux-
4、配置Linux内核
配置内核应该根据需要进行配置,在进行嵌入式开发时,很多功能是需要编译进内核的,这样在进行开发的时候才能使用。下面就本文的嵌入式开发所需要内核支持的功能对内核进行配置。
1)make menuconfig
2)内核级自动配置
自动配置是在内核配置中网络选项中的一个应用:TCP/IP配置。在
Networking support->Networking options中选择:(如图)
IP:kernel level autoconfiguration
IP:DHCP support
IP:BOOTP support
3)NFS内核配置
在File systems ->Network File Systems中选择:(如图)
NFS file system support
Provide NFSv3 client support
NFS server support
Provide NFS server over TCP support
Root file system on NFS
4)在File Systems中选择/dev file system 支持(如图)。
通常,系统启动时会自动把设备文件系统挂载在/dev目录下。有了设备文件系统,Linux设备文件的创建、删除和目录层次等都由设备驱动程序管理,再也不用手工创建设备文件节点,再也不需要maknod时查找对应的主设备号了,也不用复杂的脚本管理设备文件了。
5、make bzImage
阅读(2160) | 评论(0) | 转发(0) |