ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Ubuntu安装Linux2.6.35内核编译

2020-06-14 23:09:29  阅读:464  来源: 互联网

标签:x86 vdso make sudo 35 内核 Ubuntu Linux2.6 arch


参考:百度 在ubuntu安装Linux2.6.35内核
https://www.linuxidc.com/Linux/2011-08/40124.htm
http://www.mamicode.com/info-detail-2101399.html
https://blog.csdn.net/xin_yu_xin/article/details/42184899

第一步:下载解压内核源代码linux-2.6.35.tar.gz

sudo tar -xvf linux-2.6.35.tar.xz -C /usr/src/
cd /usr/src

第二步:
安装编译内核时需要的工具(sudo apt install)

sudo apt-get install build-essential kernel-package libncurses5-dev

第三步:配置编译源码
切换至root用户 sudo su

make menuconfig
make

报错及解决方案

报错1内核函数错误

size expression for do_hypervisor_callback does not evaluate to a constant
/tmp/ccINj1Ii.s: Assembler messages:
/tmp/ccINj1Ii.s: Error: .size expression for do_hypervisor_callback does not evaluate to a constant
make[2]: *** [arch/x86/kernel/entry_64.o] 错误 1
make[1]: *** [arch/x86/kernel] 错误 2
make: *** [arch/x86] 错误 2


解决方式

vi arch/x86/kernel/entry_64.S

END(do_hypervisor_callback)改为END(xen_do_hypervisor_callback)
在这里插入图片描述
修改,在do前面加上xen_(wq保存退出再make)


报错2

CC arch/x86/vdso/vgetcpu.o
CC arch/x86/vdso/vvar.o
VDSO arch/x86/vdso/vdso.so.dbg
gcc: 错误: elf_x86_64:没有那个文件或目录
make[2]: *** [arch/x86/vdso/vdso.so.dbg] 错误 1
make[1]: *** [arch/x86/vdso] 错误 2
make: *** [arch/x86] 错误 2
在这里插入图片描述
解决方式
vi arch/x86/vdso/Makefile
进去:set nu显示行号 找对应行

1  修改28行,将-m elf_x86_64 修改为-m64;
2  修改72行,将-m elf_i386 修改为-m32

报错3

duplicate member ‘page’

解决方式

这个错排完就能正常make了


第四步:执行sudo make modules_install install,这部应该是可以直接编译和安装模块,就不需要先make modules(编译内核)再make modules_install(安装内核)了。
第五步:执行sudo make install安装内核;
第六步:配置grub引导。
执行命令sudo gedit /etc/default/grub,配置/etc/default/grub文件在文件中添加GRUB_TIMEOUT_STYLE=menu,GRUB_HIDDEN_TIMEOUT=0改为大于0的数即可,执行命令update-grub;执行完这一步基本上就完成了内核的编译和安装,重启ubuntu就行了。

在这里插入图片描述

标签:x86,vdso,make,sudo,35,内核,Ubuntu,Linux2.6,arch
来源: https://blog.csdn.net/chenhangx/article/details/106736809

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有