说明:当前内核源代码所在的位置: /home/ecust/Linux/linux-3.2.tar.bz2 ,Toolchain所在的位置: /home/ecust/ToolChain/toolchain-4.5.1.tar.bz2 ,掌握嵌入式Linux内核的编译过程。
1.编译内核的命令有哪些?它们有什么区别?
2.如何安装交叉编译环境?
3.简述arm-linux内核的编译及烧写过程?
以下是网上搜的: 1、在http://www.kernel.org/上下载最新的内核源代码linux-2.6.33.1.tar.bz2,放在/liqiong/Linux内核 目录下,liqiong是Linux OS的第一个用户名。 2、进入Linux内核源码所在的目录(cd Linux内核),解压该内核代码到/usr/src下: sudo tar -xjvf linux-2.6.33.1.tar.bz2 -C /usr/src 3、进入Linux内核源码解压后的目录/usr/src/linux-2.6.33.1(cd /usr/src/linux-2.6.33.1) 4、sudo make mrproper 净化解压后的源代码5、sudo make menuconfig 对内核选项进行配置6、对于配置可选择General Setup或者选择其他的自定义选项保存后退出。 7、sudo make dep 建立模块间的依赖信息 8、sudo make clean 删除配置时留下的一些不用的文件 (7、8两步可能对于一些PC没有作用) 9、sudo make bzImage 编译内核,内核较小时可以用make zImage 10、sudo make modules 编译内核模块 当然,在编译内核时,可通过make-j<n>来加速内核的编译,n一般等于CPU数量的两倍。单核,n=2;双核,n=4.即执行sudo make -j4就可以编译了! 11、sudo make modules_install 安装内核模块 12、sudo make install 安装内核 13、cd / 后在终端输入:sudo mkinitramfs 2.6.33.1 -o /boot/initrd.img-2.6.33.1-generic 14、到此为止,构建内核完毕,第十二步把内核映象和System.map拷贝到/boot/下 #sudo cp /usr/src/linux-2.6.33.1/arch/i386/boot/bzImage /boot/vmlinuz-2.6.33.1-generic #sudo cp System.map /boot/System.map-KERNEL_VERSION #sudo ln -s /boot/System.map-KERNEL_VERSION /boot/System.map