0.下载内核代码。
jiang_dlut/linux-3.0.15$ make mrproper
CLEAN drivers/tty/vt
CLEAN drivers/video/logo
CLEAN firmware
CLEAN kernel
CLEAN lib
CLEAN .tmp_versions
CLEAN vmlinux System.map .tmp_kallsyms1.o .tmp_kallsyms1.S .tmp_kallsyms2.o .tmp_kallsyms2.S .tmp_vmlinux1 .tmp_vmlinux2 .tmp_System.map
CLEAN scripts/basic
CLEAN scripts/genksyms
CLEAN scripts/kconfig
CLEAN scripts/mod
CLEAN scripts
CLEAN include/config include/generated arch/arm/include/generated arch/x86/include/generated
CLEAN .config .config.old .version include/linux/version.h Module.symvers
http://kernel.org/
1. make mrproper 检查内核源码树,是否纯净。不纯净,则会CLEAN。
2. 配置内核
jiang_dlut/linux-3.0.15$ make ARCH=arm CROSS_COMPILE=arm-fsl-linux-gnueabi- menuconfig
出现下面的配置界面,勾选你的配置。保存退出。
3. 编译内核
jiang_dlut/linux-3.0.15$ make ARCH=arm CROSS_COMPILE=arm-fsl-linux-gnueabi-
Kernel: arch/arm/boot/Image is ready
SHIPPED arch/arm/boot/compressed/lib1funcs.S
AS arch/arm/boot/compressed/lib1funcs.o
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
Building modules, stage 2.
MODPOST 46 modules
4. 查看编译错误:输入的数字代表编译错误数量。0代表编译成功,无编译错误。
jiang_dlut/linux-3.0.15$ echo "$?"
0
5.编译生成的Image文件存放目录为linux-3.0.15/arch/arm/boot。
此目录的结构如下:
linux-3.0.15/arch/arm/boot
–––––bootp
| ––bootp.lds
| ––init.S
| ––initrd.S
| ––kernel.S
| ––Makefile
–––––compressed
| ––Makefile
| ––vmlinux.lds
| ––vmlinux
| ––head.S
| ––...
Image 未压缩的Image
zImage 压缩的zImage
uImage 压缩的uImage (只比zImage多64byte的头信息)
Makefile
install.sh