首页 > 百科知识 正文

oldconfig具体使用哪些config文件(linux为什么安装不了ifconfig)

时间:2023-11-20 01:33:35 阅读:462 作者:不顾己

编译linux内核时,一般会先用make oldconfig指令配置.config文件,网上资料说make oldconfig会用到当前目录中已经存在的.config文件,那如果当前目录中没有.config文件呢?此时make oldconfig和make config是一样的吗?我以练习ldd3时用到的linux-2.6.10和Ubuntu5.04为例来说明。

首先来看干净的linux-2.6.10代码执行make oldconfig指令:

oldconfig具体使用哪些config文件(linux为什么安装不了ifconfig)-第1张

干净的代码在当前目录中是不存在.config文件的,但是可以看到有提示 "using defaults found in /boot/config-2.6.10-5-386",config-2.6.10-5-386是Ubuntu5.04自带内核的配置文件,看来make oldconfig指令不仅会使用当前目录中的.config文件,也会使用其它位置的config文件,那make oldconfig指令到底会使用哪些config文件呢?

答案就在linux-2.6.10/scripts/kconfig/confdata.c这个文件中:

oldconfig具体使用哪些config文件(linux为什么安装不了ifconfig)-第2张

可以看到所使用的config文件按顺序依次是:

  1. 当前目录中的 .config
  2. /lib/modules/$UNAME_RELEASE/.config
  3. /etc/kernel-config
  4. /boot/config-$UNAME_RELEASE
  5. 代码中的 arch/$ARCH/defconfig

当这5个文件都不存在时,make oldconfig和make config的作用就是一样的了。

,

版权声明:该问答观点仅代表作者本人。如有侵犯您版权权利请告知 cpumjj@hotmail.com,我们将尽快删除相关内容。