以openkylin为例编译安装内核


罗杰
哆啦漫漫喵 2024-11-11 14:03:47 76 赞同 0 反对 0
分类: 资源 标签: 国产操作系统
以openkylin为例编译安装内核
  1. 从现有系统的/boot目录下找到带有config字样的配置文件
  2. 因为openkylin自带docker,所以这里使用容器编译
  3. openkylin实际上是Ubuntu focal 所以选择ubuntu:focal作为容器系统 同理 deepin、uos实际上是debian buster
  4. 下载你想要安装的内核版本
  5. 把上述这些东西所在的文件夹直接挂载给容器
  6. 解包linux-x.x.x
  7. 把准备好的配置文件放到文件夹里并重命名为.config
  8. 安装编译所需的全部依赖
 
# 首先把apt源文件中的deb-src注释全部打开
apt update
apt install -y libncurses-dev pkg-config wget git xz-utils make gcc flex bison dpkg-dev bc rsync kmod cpio libssl-dev
apt build-dep -y linux

如果是基于Rocky、 fedora的国产系统,命令替换为

sudo dnf groupinstall "Development Tools"
sudo dnf install ncurses-devel make gcc bc bison flex elfutils-libelf-devel openssl-devel rpm-build rpmdevtools
sudo dnf install dwarves perl
  1. 将当前linux文件夹设置为代码仓库
 
git init
git add .
git config --global user.name "Your Name"
git config --global user.email "youremail@yourdomain.com"
git commit -m "1"
  1. 开始编译
make olddefconfig
make deb-pkg -j8

如果是基于Rocky、 fedora的国产系统,命令替换为

make olddefconfig
make certs
make rpm-pkg -j8

银河麒麟需要手动安装https://github.com/acmel/dwarves.git

解释
 
 
Build instructions:
git clone https://github.com/acmel/dwarves.git
1. install cmake
2. mkdir build
3. cd build
4. cmake -D__LIB=lib ..
5. make install

cmake Options:
  -DBUILD_SHARED_LIBS
    By default SHARED libraries are created and applications are linked to it.
    Use -DBUILD_SHARED_LIBS=OFF while invoking cmake to create STATIC libraries
    and link applications to it.

    Ex. cmake -D__LIB=lib -DBUILD_SHARED_LIBS=OFF ..

  -DCMAKE_INSTALL_PREFIX
    Default is to install to /usr/local, use -DCMAKE_INSTALL_PREFIX=
    when invoking cmake to specify another install location.

You may need to update the libbpf git submodule:

git submodule update --init --recursive
# make rpm-pkg 需要改为
make
make install

如果报证书错误 需要用make menuconfig命令进入配置菜单
导航到

# Cryptographic API
#    > Certificates for signature checking
#       > X.509 certificates to be preloaded into the system blacklist keyring
# 将内容清空
# 保存退出
make clean
make rpm-pkg
  1. 导出编译产物
    linux-x.x.x同级目录下/或~/rpmbuild/RPMS/x86_64/ 下的deb/rpm包就是目标产物
    导出到实体机安装
    主要安装
    linux-headers*
    linux-image(不带有dbg字样)
    两个包即可

  2. 安装
    将deb/rpm包移动到实体机的/tmp目录下
    执行

sudo apt install -d ../*.deb
或
sudo dnf localinstall ./rpmbuild/RPMS/x86_64/kernel-*.rpm

完成

如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!

评价 0 条
哆啦漫漫喵L0
粉丝 0 资源 50 + 关注 私信
最近热门资源
银河麒麟桌面操作系统V10SP1-2403-update1版本中,通过“麒麟管家-设备管理-硬件信息-硬盘”查看硬盘类型时,显示的是HDD(机械硬盘),而实际上该笔记本的硬盘类型为SSD  80
以openkylin为例编译安装内核  76
分享解决宏碁电脑关机时自动重启的方法  72
分享如何解决报错:归档 xxx.deb 对成员 control.tar.zst 使用了未知的压缩,放弃操作  63
统信uosboot区分未挂载导致更新备份失败  62
统信uos安装mysql的实例参考  59
格之格打印机dp3300系列国产系统uos打印机驱动选择  57
在银河麒麟高级服务器操作系统V10SP3中,需要将默认shell类型修改为csh。  51
MySQL国产平替最佳选择---万里数据库(GreatDB)  45
最近下载排行榜
银河麒麟桌面操作系统V10SP1-2403-update1版本中,通过“麒麟管家-设备管理-硬件信息-硬盘”查看硬盘类型时,显示的是HDD(机械硬盘),而实际上该笔记本的硬盘类型为SSD 0
以openkylin为例编译安装内核 0
分享解决宏碁电脑关机时自动重启的方法 0
分享如何解决报错:归档 xxx.deb 对成员 control.tar.zst 使用了未知的压缩,放弃操作 0
统信uosboot区分未挂载导致更新备份失败 0
统信uos安装mysql的实例参考 0
格之格打印机dp3300系列国产系统uos打印机驱动选择 0
在银河麒麟高级服务器操作系统V10SP3中,需要将默认shell类型修改为csh。 0
MySQL国产平替最佳选择---万里数据库(GreatDB) 0
作者收入月榜
1

prtyaa 收益400.83元

2

zlj141319 收益237.91元

3

哆啦漫漫喵 收益231.52元

4

IT-feng 收益219.92元

5

1843880570 收益214.2元

6

风晓 收益208.24元

7

777 收益173.17元

8

Fhawking 收益106.6元

9

信创来了 收益106.03元

10

克里斯蒂亚诺诺 收益91.08元

请使用微信扫码

添加我为好友,拉您入交流群!

请使用微信扫一扫!