- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 第 PAGE 1 页 共 NUMPAGES 6 页 ***学生实验报告 学院 年级/专业/班 姓名 学号 实验课程名称 成绩 实验项目名称 指导老师 评语: 实验目的 (1)学习重新编译Linux内核的方法 (2)理解Linux标准内核和发行版本内核的区别。 二、实验内容 在Linux系统中下载同一发行版本的版本号较高的内核,编译之后运行自己编译的内 核,并使用uname-r命令查看是否运行成功。由于不同版本的内核在编译过程中可能出现不同的问题,本书推荐的内核版本为4.16.10。从第7章开始的进阶实验篇,都可以选用该版本的内核。 三、实验设备 Vmware上运行的linux ubuntu 5.11.0-43-generic 实验成功:linux ubuntu 4.18.0-generic(Ubuntu18.04均可) 实验成功的方法在最后 实验过程和原理分析 一、实验 (一)准备工作: 在这里我建议用一个全新的虚拟机,避免编译错误对原来常使用的虚拟机造成不可逆的影响,安装好后就先安装gcc、make等工具 首先下载好Linux***内核文件 解压至 /usr/src 目录下,如下: 确认安装好gcc、make等工具,后可直接运行命令sudo make menuconfig进行查看内核功能是否需要编译,如果遇到如下错误可以运行命令 sudo apt bison 或sudo apt-get install fiex bison命令解决 错误: 解决: (不建议) (强烈建议) 除此之外还可以直接运行,上一条命令解决不了就用下面这个: sudo apt-get install --reinstall bison libbison-dev flex libfl-dev 解决上述错误(强烈建议) 运行完上述命令后再次输入sudo make menuconfig便正常进入如下: 见到这个界面后无需任何多余操作,使用键盘方向键选择Save 回车 再回车即可 此时.config文件生成成功 .config文件是隐藏文件记得加参数-a 此外还有一个方法就是用 cp 命令从原有系统的内核复制.config文件过来也可以命令:sudo cp /boot/config- 5.11.0-43-generic ./.config (二)编译内核 为了避免多线程编译时同时出现过多错误,我们这里一开始只使用单线程编译 在这里除了用make编译还可以用make-kpkg等工具,个人比较喜欢用make-kpkg 但课本用make所以我接下来的实验也先用make完成。 执行 make 出现错误: 解决:执行sudo apt-get install libssl-dev ?sudo apt-get install libelf-dev -y 再次执行make, 解决:执行sudo apt-get install openssl 再次重复上述步骤缺什么装什么,此类步骤不再重复 基本确认全部装完就开8线程编译,有错误再另外解决 出现下列错误: 解决方法: 打开这两个文件后把全注释掉再次编译问题可解决 再次编译 还有问题: make[1]: *** 没有规则可制作目标“debian/canonical-certs.pem”,由“certs/x509_certificate_list” 需求。 停止。 make: *** [Makefile:1060:certs] 错误 2 根据错误提示,把两个需求删掉就可以了 把生成的文件 .config: 里面的:(用查找功能查找) 改成这样: 再编译就可以啦,至此编译成功 (三)编译和安装模块 make modules -j8 make modules_install -j8 遇到错误: 解决: 尝试了无数方法都没有办法解决,在网上找了无数方法修改了各种配置文件、装包、清除缓存重新编译两次都不行,没办法,只能重头再试一次,安装是没问题的,如下,但是重新启动是看不到4.16的内核是安装的 sudo make install 又重新再来一次: 。。。好吧,直到现在仍在编译中,可能是我电脑太落后了 重新编译几遍还是不行,一样的错误,就在想会不会是编译器的问题,因为我这个虚拟机是重新开的,安装的gcc也是必威体育精装版的,所以我找了个18年的编译器版本,因为4.16也是18年的,同时我更认为最可能的是自动生成的 .config 文件有问题,所以我在这里一并重新解决看看是否能成功; 先装个8.1.0的gcc: 官网可能无法访问或者下载慢 推荐前往tsukuba下载(百度有哪些信誉好的足球投注网站就好,链接有限制,我这里无法提供): 因为我安装的时候是打算试一试的,所以命令没截屏,但是都一样,照着我的命令来打一样可以成功安装 解压到 /u
文档评论(0)