实践编译linux内核
Linux内核(英语:Linux kernel)是一种开源的类Unix操作系统宏内核。
Linux是用C语言中的GCC版(这种C语言有对标准C进行扩展)写的,还有几个用汇编语言(用的是GCC的”AT&T风格”)写的目标架构短段。因为要支持扩展的C语言,GCC在很长的时间里是唯一一个能正确编译Linux的编译器。
说明
实践版本:
linux-5.7
实践环境:
Windows 10 家庭版 版本号:2004
准备过程
打开程序与功能,开启以下选项并重启
适用于linux的windows子系统:
在商店中搜索 Ubuntu并下载安装,
打开Ubuntu设置初始用户与密码。
# 用Root用户
sudo su
# 更新镜像源为阿里云
curl -fsSLO https://adbyte.cn/files/cn-mirror.sh
chmod +x cn-mirror.sh
bash cn-mirror.sh
cat /etc/apt/sources.list | grep aliyun
# 下载内核包解压
curl -fsSLO https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.7.tar.xz
tar -xvf linux-kernel-5.7.tar.xz
cd linux-5.7/
# 安装依赖包
apt update
apt install make gcc flex bison libssl-dev libelf-dev
加载配置
# 可选配置(三选一)
# make defconfig # 使用默认配置
# make menuconfig # 手动配置 (wsl内不支持)
# make oldconfig # 使用旧的配置
开始编译
# make -j8 # -j8 表示8个编译命令同时执行
编译后的目录大小:
du -sh .
安装内核:
make install
清理编译历史文件 (可选)
make mrproper