编译Linux内核并修改版本号后缀为学号-Ubuntu22.04中编译安装Linux内核6.7.8

news2024/11/18 19:42:55

前言:实验课要求下载最新版本Linux内核并修改版本号,本人在Vmware中Ubuntu22.04中实现,花三天时间查阅大量网站资料。记录一下误打误撞成功的过程,希望对你们有帮助。

目录

一、常规安装步骤&猜想Ubuntu与gcc版本过低

二、安装Ubuntu22.04最终编译成功


 

一、常规安装步骤&猜想Ubuntu与gcc版本过低

        一开始用的是ubuntu15的版本,gcc版本号为4.X。

  1. 从kernel.org下载linux6.7.8
  2. 用vmwaretool把linux6.7.8压缩包复制到Download目录
  3. 解压缩压缩包至/usr/src目录
  4. cd到linux-6.7.8,或者直接图形化界面中按路径/usr/src/linux-6.7.8打开文件夹并右键在终端中打开
  5. 安装依赖库,网上的很多跟着安就是了
  6. make menuconfig,打开后什么也别动方向键右把光标移动到load→enter→ok→exit
  7. make -j4,我的vmware配置的是双核四线程,配置高的同学可以-j8
  8. 报错:

arch/x86/kvm/svm/pmu.c: In function ‘get_gp_pmc_amd’:
arch/x86/kvm/svm/pmu.c:56:20: error: logical not is only applied to the left hand side of comparison [-Werror=logical-not-parentheses]
   if (!(msr & 0x1) != (type == PMU_TYPE_EVNTSEL))
                    ^
arch/x86/kvm/svm/pmu.c: At top level:
cc1: error: unrecognized command line option ‘-Wno-shift-negative-value’ [-Werror]
cc1: all warnings being treated as errors
scripts/Makefile.build:243: recipe for target 'arch/x86/kvm/svm/pmu.o' failed
make[4]: *** [arch/x86/kvm/svm/pmu.o] Error 1
scripts/Makefile.build:480: recipe for target 'arch/x86/kvm' failed
make[3]: *** [arch/x86/kvm] Error 2
scripts/Makefile.build:480: recipe for target 'arch/x86' failed
make[2]: *** [arch/x86] Error 2 

搞了半天,放弃,重新新建虚拟机。

二、安装Ubuntu22.04最终编译成功

 新建了一个虚拟机,系统用最新的Ubuntu22.04,常规配置基本环境(设置root密码、换源、安装vmwaretools等),接着如上面下载linux6.7.8压缩包、复制、解压缩、安装依赖库;

  1. sudo vim MakeFile#在/usr/src/linux-6.7.8文件夹中启动终端执行,
    #按i进入插入模式修改版本号后缀,esc在输入:wq回车保存
    
  2. make mrproper#净化
    sudo make menuconfig#save→ok→exit退出
  3. sudo make -j4
  4. 报错
    make[1]: *** No rule to make target 'debian/canonical-certs.pem', needed by 'certs/x509_certificate_list'.  Stop.

    还有报错
    CONFIG_SYSTEM_REVOCATION_KEYS="debian/canonical-revoked-certs.pem"

    查了一下,用
    scripts/config --disable SYSTEM_TRUSTED_KEYS

    scripts/config --disable SYSTEM_REVOCATION_KEYS

    解决了
  5. sudo make modules_install 报错!
    make[2]: *** 没有规则可制作目标“/lib/modules/6.7.821/kernel/arch/x86/events/amd/amd-uncore.ko.zst”,由“depmod” 需求。 停止。
  6. 发现是没有编译好的模块,于是
    sudo make modules
    sudo make INSTALL_MOD_STRIP=1 modules_install -j4
    #应该两个运行一个就行(?)
  7. 好了以后,运行sudo make install,又报错
    sh ./arch/x86/boot/install.sh 4.14.28-2018840814 arch/x86/boot/bzImage \
    System.map "boot/"
    
    *** Missing file: arch/x86/boot/bzImage
    *** you need to run "make before "make install".

    上面是从网上找的和我一样的错误问题,不要在意细节,大意是要我先make。。唉,于是
    sudo make -j4

    完成了,果断sudo make install

  8. 成功了!!!

        

 最后reboot重启,uname -a查看版本号,确实正确,完结撒花~❀

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1507862.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

docker总结,一套搞定,常用命令,项目部署,jar包打包成镜像/容器

docker 归总 一、学习路线 1、学习视频(黑马程序员) (https://www.bilibili.com/video/BV1HP4118797/?spm_id_from333.1007.top_right_bar_window_history.content.click&vd_source6acc7ed97919d92de048f2b1e5803427) 2、…

python爬虫反反爬之图片验证

文章目录 发现宝藏一、ddddOcr(针对图形验证码)1. 工具介绍2. 安装及环境支持3. 识别示例14. 识别示例2 二、Tesseract(标准OCR识别)1. 工具介绍2. 配置系统环境3. 识别示例14. 识别示例23. 识别示例3 发现宝藏 前些天发现了一个…

C++ 队列

目录 队列的应用场景 1、429. N 叉树的层序遍历 2、 103. 二叉树的锯齿形层序遍历 3、662. 二叉树最大宽度 4、515. 在每个树行中找最大值 队列的应用场景 广度优先搜索(BFS):队列是广度优先搜索算法的核心数据结构。在BFS中&#xff…

如何将应用一键部署至多个环境?丨Walrus教程

在 Walrus 平台上,运维团队在资源定义(Resource Definition)中声明提供的资源类型,通过设置匹配规则,将不同的资源部署模板应用到不同类型的环境、项目等。与此同时,研发人员无需关注底层具体实现方式&…

Redis精讲

redis持久化 RDB方式 Redis Database Backup file (redis数据备份文件), 也被叫做redis数据快照. 简单来说就是把内存中的所有数据记录到磁盘中. 快照文件称为RDB文件, 默认是保存在当前运行目录. [rootcentos-zyw ~]# docker exec -it redis redis-cli 127.0.0.1:6379> sav…

02- 使用Docker安装RabbitMQ

使用Docker安装RabbitMQ 下载安装镜像 方式一: 启动docker服务,然后在线拉取 # 在线拉取镜像 docker pull rabbitmq:3-management# 使用docker images查看是否已经成功拉取方式二: 从本地加载 ,将RabbitMQ上传到虚拟机中后使用命令加载镜像即可 docker load -i mq.tar启动M…

你必须要知道外贸独立站的那些事

导语 独立站,顾名思义就是具有独立域名的网站。对于跨境电商来说,独立站就是让他们脱离第三方束缚的一个平台。 简单来说就是自己建立一个属于自己的电商平台,然后上传商品出售,但是需要自己去做营销、做推广。 一、自建独立站的好…

运维工具之ventoy安装及使用简介

一、Ventoy简介 简单来说,Ventoy是一个制作可启动U盘的开源工具。有了Ventoy你就无需反复地格式化U盘,你只需要把 ISO/WIM/IMG/VHD(x)/EFI 等类型的文件直接拷贝到U盘里面就可以启动了,无需其他操作。你可以一次性拷贝很多个不同类型的镜像文…

Redis核心数据结构之跳跃表

跳跃表 概述 跳跃表(skiplist)是一种有序数据结构,它通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的。跳跃表支持平均O(logN)、最坏O(N)复杂度的节点查找,还可以通过顺序性操作来批量处理节点。在大部分情况下&am…

基于PHP构建的HTML5点餐系统的设计13.91

随着互联网时代的发展,人们的生活方式正在发生改变。传统的餐饮行业也正在发生变革。人们不再满足过去的点餐方式,需要更好的体验。本课题旨在结合点餐系统的技术优势,设计一个能够方便顾客与商家,并且节约人力成本以及可以很好地…

访问一次网站的全过程

目录 流程图: 一、应用层开始 1. 在浏览器输入https://www.baidu.com 2. DNS获取IP地址 3. 根据HTTP协议生成HTTP请求报文 应用层结束 二、传输层开始 4. TCP三次握手 传输层结束 三、网络层开始 5. IP寻址 6. ARP协议获取MAC地址 网络层结束 四、数据…

Modified Bessel Function of the First Kind

Abstract 最近接触到 von Mises–Fisher distribution, 其概率密度如下: f p ( x ; μ , κ ) κ p 2 − 1 ( 2 π ) p 2 I p 2 − 1 ( κ ) e κ μ ⊺ x \begin{aligned} f_{p}(\bm{x}; \bm{\mu}, \kappa) \frac{\kappa^{\frac{p}{2}-1}} {(2\pi)^{\frac{p}{2}} I_{\frac…

linux系统下,配置开机自启脚本常见的5种方法

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 所属的专栏:linux基础与进阶,shell脚本编写实战 景天的主页:景天科技苑 文章目录 linux下设置开机自动运行脚本的5种方法一、编辑/etc/rc.d/rc.local文件1、在自己需要启动的文件目录中编写一个…

CPU独占内核运行方式实现,并指定线程到特定CPU上执行

CPU独占内核运行方式实现,并指定线程到特定CPU上执行1. 隔离指定的CPU,避免其余线程run在被隔离的CPU上2. 绑定所有的interrupts(中断)到非隔离的CPU上,避免被隔离的CPU收到interrupt.3. C绑定线程运行在指定CPU也可以通过taskset来使线程/进…

一文详解WebView,不好理解就想想iframe,类比后秒懂了。

Hi,我是贝格前端工场,又到了给大家做技术扫盲的时候,本文讲一讲webview,有些老铁觉得很难懂,其实借助iframe来中转一下,就好理解了。 WebView是一种用于在应用程序中显示Web内容的组件。它可以嵌入到应用程…

免费、好用、强大的轻量级笔记软件评测

在我们不断寻找能提高个人和团队效率的工具的过程中,优质的笔记软件扮演着至关重要的角色。本文将介绍几款经过精选的免费且功能强大的笔记应用,这些应用不仅适合个人记录和整理思维,也适合团队合作和信息共享。 Joplin —— 隐私保护的开源…

京东按关键字搜索商品 API 返回值说明

京东按关键字搜索商品的API返回值说明如下: 总记录数(total_count):搜索结果的总数量。当前页码(page_no):当前请求的页码。每页记录数(page_size):每页显示…

蓝桥杯倒计时 36天-DFS练习

文章目录 飞机降落仙境诅咒小怂爱水洼串变换 飞机降落 思路&#xff1a;贪心暴搜。 #include<bits/stdc.h>using namespace std; const int N 10; int t,n; //这题 N 比较小&#xff0c;可以用暴力搜搜复杂度是 TN*N! struct plane{int t,d,l; }p[N]; bool vis[N];//用…

Elasticsearch:机器学习与人工智能 - 理解差异

作者&#xff1a;来自 Elastic Aditya Tripathi, Jessica Taylor 长期以来&#xff0c;人工智能几乎完全是科幻小说作家的玩物&#xff0c;人类将技术推得太远&#xff0c;以至于它变得活跃起来 —— 正如好莱坞让我们相信的那样 —— 开始造成严重破坏。 令人愉快的东西&#…

保护图纸不能打印,加密图纸如何加密只能看,不能打印复制

图纸是表达设计思想、传递产品信息、交流产品构思的最重要的工具&#xff0c;是企业中最重要的技术资料。 图纸作为企业重要的技术资料&#xff0c;包含了产品的核心设计、制造工艺、材料选择等关键信息。 那么&#xff0c;如何才能保护图纸呢&#xff1f; 首先&#xff0c;我…