热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Fedora17-x86编译linux-4.5.4内核浅析及编译过程

LinuxKernel实现了Kconfig和Kbuild以及Makefile,用于辅助内核的配置和编译,使得linuxkernel的编译过程变得相当简单。(一)内核编译1、将Linux-3.5.4.tar.bz2解压至”/usr/src/kernel“目录下cd/usr/src/kernels/tar-jxvflinux-3.5.4.tar.bz

Linux Kernel 实现了Kconfig和Kbuild以及Makefile,用于辅助内核的配置和编译,使得linux kernel的编译过程变得相当简单。

(一)内核编译

1、将Linux-3.5.4.tar.bz2解压至”/usr/src/kernel“目录下

cd /usr/src/kernels/

tar -jxvflinux-3.5.4.tar.bz2

说明一下:因为目标文件夹为当前目录,所以省略,负责的话应该在该指令后添加空格+目标文件夹的绝对路径;其次:-jxvflinux-3.5.4中间没有空格,该指令的意思就是将当前目录下的linux-3.5.4解压。如果你在执行该解压指令是没有执行上面的切换工作目录的指令,那么该指令应该为:

tar -jxvf压缩文件的路径 目标文件的路径

2、copy当前的内核配置文件作为心内核编译的配置文件

#cp /boot/config-3.3.4-5.fc17.i686.PAE /usr/src/kernels/linux-3.5.4/.config

3、将当前目录切换为/usr/src/kernels/linux-3.5.4/

4、安装一些编译过程中所需要依赖的库文件

#yum install ncurses-devel_* gcc*  gcc_c++ *aclocal

5、make menuconfig

#make menucofig

生成编译阶段所需要的配置文件.config

6、 make all

该指令将生成内核ELF文件vmlinux,它对应于目标体系结构家的二进制内核映像文件。(x86体系结构下的bzImage 映像文件),make all指令将根据配置文件实现所有设备驱动模块以及可动态加载模块的编译。

7、make modules_install

安装模块到/lib/modules/linux-3.5.4

8、 make install

将vmlinuz-3.5.4,System.map-3.5.4 initramfs-3.5.4.img拷贝到/boot目录下并自动保存修改

9、重新启动,是否有3.5.4内核的加载项


推荐阅读
  • 本文旨在探讨Linux系统中两种重要的进程间通信(IPC)机制——System V和POSIX的标准及其特性,为开发者提供深入的理解。 ... [详细]
  • 为了和DSP兼容,TSint64和TUint64设置成TSint40和TUint40一样的数结果VC中还是认为是32位的,显然不合适typedefsig ... [详细]
  • 本文详细介绍了Linux环境下的两个实用命令——seq和sed。seq命令主要用于生成一系列按指定步长递增或递减的数字序列,支持自定义数字格式、宽度及分隔符。sed命令则是强大的文本处理工具,适用于文件内容的增加、删除、修改和查询等操作。 ... [详细]
  • Linux 存储堆栈架构图
    本文提供了一张清晰的Linux存储堆栈架构图,并对比了多种iSCSI后端解决方案,如LIO和STGT。文中还提供了详细的资源链接,帮助读者深入了解这些技术。 ... [详细]
  • 本文介绍了EasyRTSPClient这一高效、稳定的RTSP客户端工具库,并详细阐述了其在与大华球机对接过程中遇到的预览问题及解决方法。 ... [详细]
  • 远程访问用户 Kindle通过电子书实现控制
    介绍自2007年以来,亚马逊已售出数千万台Kindle,令人印象深刻。但这也意味着数以千万计的人可能会因为这些Kindle中的软件漏洞而被黑客入侵。他 ... [详细]
  • Linux系统中高效解决高Buff/Cache占用问题
    本文详细探讨了在Linux系统中遇到的高Buff/Cache占用问题及其解决方案,提供了手动清除与定时任务自动化处理的方法。 ... [详细]
  • Python安全实践:Web安全与SQL注入防御
    本文旨在介绍Web安全的基础知识,特别是如何使用Python和相关工具来识别和防止SQL注入攻击。通过实际案例分析,帮助读者理解SQL注入的危害,并掌握有效的防御策略。 ... [详细]
  • Linux环境下的PHP7安装与配置指南
    本文详细介绍了如何在Linux操作系统中安装和配置PHP7,包括检查当前PHP版本、升级PHP以及配置MySQL支持等步骤,适合后端开发者参考。 ... [详细]
  • Android开发经验分享:优化用户体验的关键因素
    随着Android市场的不断扩展,用户对于移动应用的期望也在不断提高。本文探讨了在Android开发中如何优化用户体验,以及为何用户体验的重要性超过了技术本身。 ... [详细]
  • 本文探讨了在Linux系统中尝试访问远程MySQL数据库时遇到的权限拒绝错误,特别是当使用非root用户进行连接时出现的'Access denied for user'错误。 ... [详细]
  • VSCode中实现大型项目函数跳转的方法
    在处理大型代码项目时,简单的C/C++插件往往无法满足需求。本文介绍如何通过配置GNU Global等工具,在VSCode中实现高效的函数跳转。 ... [详细]
  • 本文探讨了Flutter和Angular这两个流行框架的主要区别,包括它们的设计理念、适用场景及技术实现。 ... [详细]
  • 2020年腾讯PCG后端开发实习生面试经历分享
    本文详细记录了2020年腾讯平台与内容事业群(PCG)后端开发实习生岗位的面试过程,包括初试和复试的主要内容和技术考察点。 ... [详细]
  • Unix与Linux的起源与发展
    本文详细探讨了Unix与Linux的操作系统起源,从自由软件运动的兴起,到Linux内核的诞生,全面解析了这两款操作系统的发展历程及其对现代计算技术的影响。 ... [详细]
author-avatar
牛奶姆姆_592
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有