首页 > 代码库 > 编译Linux Kernel

编译Linux Kernel

最近编译 Linux Kernel 被 header 所在的文件骗了,使用命令如下

cd /usr/src/linux-headers-3.11.0-24-generic/
make menuconfig
make

make menuconfig都还是正常

make的时候就缺很多文件,headers 文件夹下面缺很多 src文件


后来经过同事指点,使用了下面的步骤,成功了

sudo apt-get install libncurses5-dev kernel-package
mkdir ~/kernel
cd ~/kernel/
apt-get source linux-image-$(uname -r)
cd linux-lts-saucy-3.11.0 
make menuconfig
export CONCURRENCY_LEVEL=4
time fakeroot make-kpkg --initrd --append-to-version=-binder kernel-image kernel-headers
cd ..
sudo dpkg -i linux-image-3.11.10.11-binder_3.11.10.11-binder-10.00.Custom_i386.deb
sudo dpkg -i linux-headers-3.11.10.11-binder_3.11.10.11-binder-10.00.Custom_i386.deb 


注意:

使用apt-get source linux-image-$(uname -r) 后,要看src 的文件夹是什么(这里是 linux-lts-saucy-3.11.0)

make menuconfig 在UI中,选择要编入kernel的驱动,本例选的是Android binder

build 命令是:time fakeroot make-kpkg --initrd --append-to-version=-binder kernel-image kernel-headers,生成 .deb 文件,安装后,用reboot重启系统


ref:

http://linuxtweaking.blogspot.co.uk/ubuntu-1204-lts-kernel-compile-guide.html