ITEEDU

Linux系统学习基础

第一章 开发工具学习

第二章 Linux内核制作

第三章 initramfs制作

第四章 Linux系统制作原理

第五章 文件系统启动方式配制

menuconfig

menuconfig是常用的配制工具,不用特意安装,好像是和GCC一起装上的。

注:menuconfig要用到ncurses的库,所以要安装它。下面的命令可以安装。

apt-get install libncurses*

选择相应的配置时,有三种选择,它们分别代表的含义如下:

  1. “Y”- 将该功能编译进内核
  2. “N”- 不将该功能编译进内核
  3. “M”- 将该功能编译成可以在需要时动态插入到内核中的模块。

将与核心其它部分关系较远且不经常使用的部分功能代码编译成为可加载模块,有利于减小内核的长度,减小内核消耗的内存,简化该功能相应的环境改变时对内核的影响。许多功能都可以这样处理,例如像上面提到的网卡的支持、对FAT等文件系统的支持。

make menuconfig,则需要使用空格键进行选取。你会发现在每一个选项前都有个括号, 但有的是中括号有的是尖括号,还有一种圆括号。 用空格键选择时可以发现,中括号里要么是空,要么是"*",而尖括号里可以是空,"*"和"M"这表示前者对应的项要么不要,要么编译到内核里;后者则多一样选择,可以编译成模块。而圆括号的内容是要你在所提供的几个选项中选择一项。

  1. 中括号:要么是空,要么是"*",代表要么不要,要么编译到内核里。
  2. 尖括号:可以是空,"*"和"M",多一样选择,可以编译成模块。
  3. 圆括号:所提供的几个选项中选择一项。

menuconfig相关命令:

$sudo make menuconfig

配置用到的键只有几个,esc退出菜单;空格改变选项状态;光标键上下左右移动,回车选定。

选项意义:M是编译成可以随时加入的模块,*是编译进入内核,空就是不要。