内核下载地址:Linux kernel

1、将下载好的内核源码压缩包置于ubuntu18.04虚拟机中(在windows上解压会导致部分文件损坏)

2、解压下载的压缩包,在/usr/src中 tar -xvf linux-4.15.tar.gz -C /usr/src后 cd /usr/src

3、安装编译工具

sudo apt-get install libncurses5-dev libssl-dev

sudo apt-get install build-essential openssl

sudo apt-get install zlibc minizip

sudo apt-get install libidn11-dev libidn11

4、 输入cp /boot/config-,然后按下Tab键,系统会自动填上该目录下符合条件的文件名,然后继续输入 .config。目的是使用在boot目录下的原配置文件。如果/usr/src下有.config文件,也不要使用,因为/boot/下的配置文件更新一些。

5、make mrproper(如果你只是在原编译版本上修改了.config的少许选项,而希望其他选项保留的话,不要执行这一步,否则你需要从头开始编译!!!)

make mrproper作用是清理源代码树,包括过去曾经配置的内核配置文件“.config”都将被清除。即进行新的编译工作时将原来老的配置文件给删除到,以免影响新的内核编译,即检查有无不正确的.o文件和依赖关系,如果使用刚下载的完整的源程序包即第一次进行编译,那么本步可以省略。而如果你多次使用了这些源程序编译内核,则最好要先运行一下这个命令。

6、make menuconfig

图形界面配置内核配置项,修改配置后保存

注:如遇到报错,缺哪个包安装哪个包

可能会遇到recipe for target 'include/generated/timeconst.h' failed

apt-get install bc 可以解决这个问题

7、make -j? (大约需要3个小时,我的是VMware Workstation下的Ubuntu虚拟机),该命令会生成内核模块和vmlinuz,initrd.img,Symtem.map文件。

注:#make相当于分别执行#make bzImage 和#make modules,由于是本机替换内核,所以无需分开执行。这一步所需的时间较长,为了加快编译速度,我们可以加上“-j”选项,后面跟的数字是jobsnum ,建议设置为 CPU 核心数 *2,比如在一台双核的机器上,完全可以用make -j4,让make最多允许4个编译命令同时执行,这样可以更有效的利用CPU资源,在多核CPU上,适当的进行并行编译还是可以明显提高编译速度的。但并行的任务不宜太多,一般是以CPU的核心数目的两倍为宜。

8、make modules_install (模块安装)

9、make install(内核安装)

10、现在检查一下/boot目录是否生成了initrd镜像文件,一般通过上述步骤就会在/boot目录下生成满足内核启动条件的vmlinuz、initrd.img(当然/boot下附带还有System.map、config),如果/boot下没有initrd.img,则需要执行cd /boot 后通过mkinitrd -oinitrd.img-2.6.35 2.6.35生成initrd.img

11、reboot 可以去选择你编译好的内核

ubuntu18.04编译4.15内核过程相关推荐

  1. Ubuntu18.04编译Openwrt 15.05.1 Chaos Calmer版本固件遇到的问题汇总

    前言:编译所用gcc版本: gcc version 5.5.0 book@100ask ~$ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_ ...

  2. linux内核带rt,Ubuntu18.04安装PREEMPT_RT实时内核

    本文主要记录在Ubuntu18.04下安装PREEMPT_RT的过程,主要是因为目前有些机器人的通讯频率1KHZ,在Ubuntu下控制机器人时需要响应速度低于1ms,否则机器人数据丢失,机器人可能会停 ...

  3. Ubuntu18.04 编译安装 Realtek 8852 无线网卡驱动

    记录一下Ubuntu18.04 编译安装 Realtek 8852 无线网卡驱动全过程 内核版本: Linux 5.6.19-050619-generic 先是一步一步按照这个做的,到make的时候发 ...

  4. OpenCV环境配置:Ubuntu18.04编译OpenCV4.2.0和contrib模块记录

    OpenCV环境配置:Ubuntu18.04编译OpenCV4.2.0和contrib模块记录 1.下载源码和安装依赖包 2.解压源码文件和配置路径 3.配置Cmake并编译OpenCV 4.导入Op ...

  5. Ubuntu18.04 编译Android 10源码 并烧录源码到pixel3的避坑指南

    Ubuntu18.04 编译Android 10源码 并烧录源码到pixel3的避坑指南 实验环境 下载Android源码树 在pixel3上安装手机驱动版本 编译Android源码 Android ...

  6. Ubuntu18.04 编译报错 `No package ‘orocos-bfl‘ found` 的解决方法

    写在前面 笔者运行环境Ubuntu18.04,ROS-melodic. 在运行 robot_pose_ekf ,出现了 bfl 的报错. 一.报错提示 No package 'orocos-bfl' ...

  7. android 源码编译core dumped,Ubuntu18.04 编译Android 8.1 源码出现的问题及解决笔记

    Ubuntu18.04 编译Android 8.1 源码出现的问题及解决笔记 经过不断的尝试并经过一晚上的编译终于在ubuntu18.04的虚拟机内编译成功Android 8.1,下面我列举以下在编译 ...

  8. 联想小新+Windows10+Ubuntu18.04双系统安装+引导设置过程全记录

    写在前面 双系统安装 配置 主要过程 引导设置 主要参考 Ubuntu卸载 需要的工具 具体步骤 情况一 情况二 主要参考 后记 2020.5.29更新 关于卸载 关于主题的配置 写在前面 又是折腾的 ...

  9. Ubuntu18.04编译c语言程序

    在Ubuntu18.04系统下编译C程序的一般流程,vim文本编辑器的使用,makefile的使用等 一.vim教程 1. 功能 2. 模式 3. 基本操作 二.在Ubuntu系统下使用gcc编译c程 ...

最新文章

  1. makefile经验笔记
  2. 【web安全】Spring boot heapdump获取敏感信息
  3. TRY NOT TO SAY SO MUCH!
  4. 《人民日报》专访姚期智院士:AI是历史性的起跑线机遇
  5. GCC 使用-C语言编译过程
  6. linux怎么进入优盘目录,LINUX 9.0怎么挂载U盘?
  7. uniapp某个页面高度占满写法
  8. AWVS12 安装教程(详细附图)
  9. 关掉EMOS的反病毒及反垃圾服务。
  10. Niushop wap端前台模板设置
  11. 从“NVIDIA禁令”看如何正确选择NVIDIA GPU卡
  12. iMovie 裁剪视频
  13. LaTeX数学公式常用符号
  14. Android原生插件开发-开发篇
  15. 大觉寺,鹫峰,农家院 游玩
  16. ios打包证书申请流程
  17. 【自己写全景】TreeJs实现全景图
  18. 今天,彻底弄懂什么是URI
  19. Feign 请求动态URL
  20. 如何进行质量管理(转载)

热门文章

  1. 分享一下分期手续费如何折算成年利率
  2. 1763. 传球游戏
  3. 外包项目开发课程整理三:Selfsourcing(自主开发)及 Prototyping(打造原型)
  4. 解非线性方程的两种方法与python实现
  5. 修改AIX的内核参数
  6. java知识体系整理(二)JVM、GC回收及调优
  7. 如何实现一个SQL解析器
  8. 全国软件测试大赛嵌入式测试步骤及所需工具
  9. 南京林业大学计算机科学,南京林业大学计算机科学与技术专业怎么样
  10. 在linux中启动mysql,在linux中启动mysql服务的命令