嵌入式linux内核编译

Edukit-III实验箱的开发环境是cygwin,因此想在纯Linux系统下,对内核进行编译。
主机环境:虚拟机安装的ubuntu10.04LTS,交叉工具链为arm-linux-gcc2.95.3,安装目录为/usr/local/arm/2.95.3/
 
【1.安装Linux源码】
把Linux源码压缩包(linux-2.4.18-rmk7-pxa1-mz5.tar.bz2)拷贝到/usr/src,然后解压
 

root@VMUBUNTU:/usr/src# tar jxvf linux-2.4.18-rmk7-pxa1-mz5.tar.bz2

把补丁文件(linux-2.4.18-rmk7-pxa1-mz5.tar.bz2.edukit2410_2.patch)拷贝到/usr/src,切换到kernel目录,然后打补丁

root@VMUBUNTU:/usr/src# cd kernel/
root@VMUBUNTU:/usr/src/kernel# patch -p1 </usr/src/linux-2.4.18-rmk7-pxa1-mz5.tar.bz2.edukit2410_2.patch

【2.修改Makefile文件】

把/usr/src/kernel/下的Makefile做如下修改: 第23行

CROSS_COMPILE = /opt/host/armv4l/bin/armv4l-unknown-linux-


改为

CROSS_COMPILE = /usr/local/arm/2.95.3/bin/arm-linux-


【3.编译linux内核】

在/usr/src/kernel目录下,执行如下命令

root@VMUBUNTU:/usr/src/kernel# make mrproper
root@VMUBUNTU:/usr/src/kernel# make menuconfig
root@VMUBUNTU:/usr/src/kernel# make dep
root@VMUBUNTU:/usr/src/kernel# make zImage

如果没有错误,会在/usr/src/kernel/arch/arm/boot/目录下生成zImage,即为linux内核映像文件

root@VMUBUNTU:/usr/src/kernel/arch/arm/boot# ls
bootp compressed install.sh Makefile Makefile.orig  zImage


作者: stuyou   发布时间: 2010-09-28