.config文件和Menuconfig以及Makefile参考学习
Linux内核Make Menuconfig 与 Makeifle间的交互_zhiweimai的博客-CSDN博客
以ARM平台为例,具体配置过程:
1.当执行make menuconfig 时,系统首先读取arch/arm/Kconfig生成整个配置界面
2.在读取配置界面的同时,系统会读取Kconfig文件,生成所有配置选项的默认值
3.当修改完配置并保存后,系统会更新顶层目录下的.config
4.当执行make时,各层的Makefile会根据.config文件中的编译选项来决定哪些文件会被编译到内核中,或者编译成模块。
Kconfig文件:在make menuconfig命令的时候读取的文件
.config文件 :是make menuconfig完成后的最终输出文件,内部包含了对内核所有的配置项
kconfig------->.config---------->makefile
linux-3.4.2/.config
CONFIG_CRYPTO_MD5=y
# CONFIG_CRYPTO_SHA1 is not set
# CONFIG_CRYPTO_SHA256 is not set
# CONFIG_CRYPTO_SHA512 is not set
# CONFIG_CRYPTO_WP512 is not set
# CONFIG_CRYPTO_TGR192 is not set
# CONFIG_CRYPTO_GF128MUL is not set
CONFIG_CRYPTO_ECB=m
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_PCBC=m
=y :表示直接编译进内核
=m:表示编译程模块 ko文件,可以动态加载到内核运行
在make的过程,Makefile会对.config进行解析,并输出两个文件include/config/auto.conf
CONFIG_CPU_S3C2442=y
CONFIG_MMC=y
CONFIG_CPU_S3C2443=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_ZISOFS=y
CONFIG_BUG=y
CONFIG_NFS_FS=y
CONFIG_MII=y
CONFIG_ARM=y
CONFIG_CRYPTO=y
include/linux/autoconf.h
#define CONFIG_CPU_S3C2443 1
#define CONFIG_INITRAMFS_SOURCE ""
#define CONFIG_ZISOFS 1
#define CONFIG_BUG 1
#define CONFIG_NFS_FS 1
#define CONFIG_MII 1
#define CONFIG_ARM 1
#define CONFIG_CRYPTO 1
#define CONFIG_MTD_CFI_INTELEXT 1
auto.conf文件是作用于Makefile的,它是在定义Makefile变量。而autoconf.h是作用于源代码的,它是在定义一些的宏,匹配源码中的条件编译。
.config文件和Menuconfig以及Makefile参考学习相关推荐
- linux 的kernel文件夹里面没有makefile,makefile_linux kernel在哪儿_linux 内核配置机制(make menuconfig、Kconfi...
你是否正在寻找关于menuconfig的内容?让我把最实在的东西奉献给你: 前面我们介绍模块编程的时候介绍了驱动进入内核有两种方式:模块和直接编译进内核,并介绍了模块的一种编译方式--在一个独立的文件 ...
- 正确地保存编译内核产生的 config文件-使用make savedefconfig
正确地保存编译内核产生的.config文件-使用make savedefconfig 一直以来保存编译内核生成的.config文件都是cp .config arch/arm/configs/xxx_d ...
- 【转载】]基于RedHatEnterpriseLinux V7(RHEL7)下SPEC CPU 2006环境搭建以及测试流程 介绍、安装准备、安装、config文件以及运行脚本介绍...
https://www.codetd.com/article/1137423 <版权声明:本文为博主原创文章,未经博主允许不得转载> 本次利用SPECCPU2006测试工具来进行Intel ...
- 基于RedHatEnterpriseLinux V7(RHEL7)下SPEC CPU 2006环境搭建以及测试流程(之一)——介绍、安装准备、安装、config文件以及运行脚本介绍
<版权声明:本文为博主原创文章,未经博主允许不得转载> 本次利用SPECCPU2006测试工具来进行Intel CPU Xeon E7-**** v4的测试以及调优,计划在机器I840-G ...
- 【Kubernetes 018】cfssl创建证书并结合RBAC的RoleBinding配置新用户config文件操作详解
安全性是企业生产环境中的头等大事,对于访问同一集群的不同用户或者用户组来说,将权限分级是很有必要的.和很多云厂商一样,k8s也是采用按照角色和用户绑定的方式来分配权限的,这一节我们就来实际操作下,新建 ...
- menuconfig与Kconfig入门学习
概述 menuconfig是Linux平台用于管理代码工程.模块及功能的实用工具. menuconfig的使用方式通常是在编译系统之前在系统源代码根目录下执行make menuconfig命令从而打开 ...
- Makefile快速学习
Makefile经典教程(掌握这些足够) Makefile经典教程(掌握这些足够) Makefile经典教程(掌握这些足够) makefile很重要 什么是makefile?或许很多Winodws的程 ...
- 如何使用matlab的siso,MIMO-SISO-MATLAB-program 和 的 仿真源代码,非常详细,可以参考学习 267万源代码下载- www.pudn.com...
文件名称: MIMO-SISO-MATLAB-program下载 收藏√ [ 5 4 3 2 1 ] 开发工具: matlab 文件大小: 213 KB 上传时间: 2016-01-09 ...
- Web.config文件使用
一.认识Web.config文件 Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式), ...
最新文章
- springboot+kafka(ip地址瞎写的)
- 时髦的互联网公司都在用什么技术?
- android studio mac svn插件,mac下Android studio如何使用SVN进行版本控制?
- Ajax实战:Ajax的四个基本原则
- spring-security-oauth2实现OAuth2.0服务
- MySQL大表优化技术要点科普
- 什么是小样本学习?这篇综述文章用166篇参考文献告诉你答案
- jupyter notebook 设置默认目录
- 图书馆管理系统项目思路
- ElasticSearch学习(二):ElasticSearch下载与运行
- 示例1---从记事本中读取数值,然后写到数组中
- 产品经理三大证书,考哪个好
- PS抠图后有毛边怎么处理?
- 自学单片机是否先学c语言,学习单片机一定要先学好C语言再去学单片机吗
- g mysql windows_Windows平台配置5.7版本+MySQL数据库服务
- WMS系统(二)盘点之“核对库存”
- opencv的基本数据类型CvPoint,CvSize,CvRect和CvScalar
- 在64位Ubuntu 16.04系统里安装Qt 5.9.1
- 怎么把paper快快读了
- HTML元素中的属性2(路径详解)—零基础自学网页制作
热门文章
- 如何在Mac上删除iPhone和iPad iCloud备份?
- https://dl.bintray.com/scalding/generic/waroverlay.gradle不能访问
- [Matlab科学计算] Matlab打开Labview保存的TDMS文件
- 51NOD - 1305 Pairwise Sum and Divide(思维)
- 硬件知识:电机驱动芯片——DRV8833、TB6612、A4950、L298N的详解与比较
- dayjs 取本周时间段
- 【笔记】DenseTNT:End-to-end Trajectory Prediction from Dense Goal Sets
- 如何下载下载国标文件
- Karma与TSLint
- 光是无限远服务器怎么登陆,sv独立客户端怎么连接服务器(sv独立客户端登录密码)...