Linux是一个操作系统内核,用户空间应用程序将围绕这个内核创建不同的发行版,如CentOS、Ubuntu、Mint和Kali。内核可以免费下载和使用,无需支付任何许可费。在本教程中,我们将学习如何从 内核.org 并用GCC进行编译。安装或升级内核的最后一步。
null
下载内核源代码
内核源代码最初保存在Kernel.org中。但是有很多镜像可以用来下载内核源代码。在这一步中,我们将使用 wget
命令如下。Linux内核的当前稳定版本是 4.17.6
.
$ wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.17.6.tar.xz

安装GCC和其他要求
在Linux环境下,GCC是C和C++源代码最流行的编译器。我们将使用GCC为Linux内核编译和创建二进制文件。我们将安装 gcc
对不同的发行版使用以下命令。
Ubunt、Debian、Mint、Kali:
$ sudo apt-get install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison
CentOS,软呢帽:
$ sudo yum install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison

提取内核源代码
内核源代码有大量的文本类型数据,这可能会占用大量的磁盘空间和带宽。所以Linux内核代码是以压缩格式分发的,比如 xz
, tar.gz
我们下载内核源代码 xz
所以我们需要提取源代码 与 tar
命令如下。
$ tar xvf linux-4.17.6.tar.xz
创建编译配置
我们将创建一个用于编译所需模块和内核特性的配置。
$ make menuconfig

用GCC编译Linux内核源代码并制作
我们将使用 make
命令wich将根据我们用 make menuconfig
命令。
$ make

更快地编译Linux内核
默认情况下,make命令将使用单个线程编译。但由于现代CPU有多个内核,这使得我们能够使用多个线程来运行并行编译 -j
选择 make
命令。在本例中,我们指定4个线程
$ make -j 4

相关文章: Linux Bash环境变量
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END