如果你想使用ram disk,那么用以下命令进行编译:
make zImage.initrd
否则用以下命令:
make
以前编译2.4内核的时候之前都要用make dep 命令保证编译内核时所有的依赖,例如头文件,都存在。不过对于2.6来讲已经不需要了,直接一个make命令把make dep和make zImage的事请就做了。如果你之前编译过,想重新编译的话,最好用一下make clean,它能够去除所有的object文件以及一些别的遗留文件。当然你也可以用make mrproper,这个比make clean清理得更加彻底,不过小心你的.config文件了,它会一起删除的,所以还是首先备份一下,或者就用make clean吧。
现在我们是第一次编译,所以还不用考虑这些。为了保险,我们使用第二组指令来进行编译。时间蛮长的,如果一切顺利,编译出来的内核会放在 arch/ppc/boot/images/目录下,可能叫zImage.elf或者zImage.initrd.elf,用目前这种编译方式编译的是 zImage.elf。
理论上讲,完毕之后就可以把这个执行文件拷贝到EDK工程目录下,并进入创建ACE文件的步骤了。但是,在上面的讲解中,我们并没有使用内核模块,而在进一步应用中,很可能有一些内核选项是要以模块形式编译进去的,此时,接下来的工作就是建立及安装模块,用命令
make modules
make modules_install
来编译,成功后,系统会在/lib/modules目录下生成一个按你所编译内核的版本号命名的子目录,里面存放着新内核的所有可加载模块。将来要使用时用insmod命令进行加载即可。目前的的Linux 2.6x版本内核是自动解决依赖关系,所以暂时不用关注depmod了。 |