LINUX (UBUNTU) 编译内核详解[转]

一、下载源代码和编译软件的准备
下载内核源代码:http://www.kernel.org/

安装有关编译程序。安装make ,gcc, make-kpkg,运行menuconfig等等和编译内核相关的工具。
安装不了,请检查/etc/apt/sources.list 文件。
有关命令:

代码:

$sudo  apt-get install build-essential kernel-package   libncurses5-dev

二、解压源代码
注意,网上很多教程上说应该解压到 /usr/src,纯属以讹传讹,linux掌门人linus说解压到任何目录上都可以。当然,linus的说法是正确的。我放在自己的主目录下的src目录。
如果你下载源代码是放到自己的主目录下或者运行上面的wget下载的,那么运行下列命令:

代码:

$ cd ~
$ mkdir src && tar xvf linux-5.15.5.tar.xz -C src/

现在,源代码就在 ~/src/linux-5.15.5
进入源代码的目录,准备下一步的工作。后面都在这个目录里面进行。

代码:

$ cd ~/src/linux-5.15.5

三、开始编译前的准备工作。
首先,清理以前编译时留下的临时文件。如果是刚刚解开的包,不需要执行这步。如果是第二次或者是第n次编译,那么一定要执行。
相关命令如下:

代码:

$ sudo make mrproper


网上很多教程上说把现在使用的内核的config拷贝过来参考,据实验,是不需要的,ubuntu还有
debian会自动做这步。不过这条命令倒是可以学习一下。当然你可以将以前的配置拷贝过来。
命令:

代码:

cp /boot/config-`uname -r` ./.config



四、开始配置内核选项。
相关命令:

代码:

$sudo make menuconfig

出现错误

LEX     scripts/kconfig/lexer.lex.c
/bin/sh: 1: flex: not found

原因:
缺少库

解决:
sudo apt-get install flex
sudo apt-get install bison

出现错误

Your display is too small to run Menuconfig!
It must be at least 19 lines by 80 columns.
表示终端窗口太小。解决办法可以是把终端窗口适当的调大(或是直接最大化)就行了。

最后成功进入内核

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值