2 chunguang8256 chunguang8256 于 2013.06.04 15:05 提问

手动修改linux的配置文件.config,编译通不过

我要打开ipv6功能,一般的方法是通过make menuconfig界面打开相应的选项,我只要ipv6功能,所以其他的都去掉了,修改后的.config和原来相比多了以下几项:
CONFIG_IPV6=y

#CONFIG_IPV6_PRIVACY is not set

#CONFIG_IPV6_ROUTER_PREF is not set

#CONFIG_INET6_AH is not set

#CONFIG_INET6_ESP is not set

#CONFIG_INET6_IPCOMP is not set

#CONFIG_INET6_XFRM_MODE_TRANSPORT is not set

#CONFIG_INET6_XFRM_MODE_TUNNEL is not set

#CONFIG_INET6_XFRM_MODE_BEET is not set

#CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set

#CONFIG_IPV6_SIT is not set

#CONFIG_IPV6_TUNNEL is not set

CONFIG_IPV6_MULTIPLE_TABLES is not set

#

#IPv6: Netfilter Configuration (EXPERIMENTAL)

#

#CONFIG_IP6_NF_QUEUE is not set

#CONFIG_IP6_NF_IPTABLES is not set

然后编译内核,可以通过。

但是我觉得其他项都没有打开,写在.config配置文件里比较别扭,然后我就把内核回退到make menuconfig之前的原始状态,在.config里手动只加入一项:CONFIG_IPV6=y,结果编译就通不过了,提示:
scripts/kconfig/conf -s arch/i386/Kconfig

  • *
  • *Restart config...
  • *
  • *
  • *Networking options
  • * Network packet debugging (NETDEBUG) [N/y/?] n Packet socket (PACKET) [Y/n/m/?] y Packet socket: mmapped IO (PACKET_MMAP) [Y/n/?] y Unix domain sockets (UNIX) [Y/n/m/?] y Transformation user configuration interface (XFRM_USER) N/m/y/? aborted!

请问这是怎么回事?手动修改.config之后还要做什么操作吗?

2个回答

codehat
codehat   2013.07.03 00:32

还是用make menuconfig来配置吧,怀疑是某些依赖项没打开。

oyljerry
oyljerry   Ds   Rxr 2014.12.28 16:07

用./config的时候,去掉相关配置项

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
正确地保存编译内核产生的.config文件-使用make savedefconfig
正确地保存编译内核产生的.config文件-使用make savedefconfig,一直以来保存编译内核生成的.config文件都是cp .config arch/arm/configs/xxx_defconfig来保存的。但是这其实是一个错误的方法。原因听我细细道来。
Porting:linux内核编译、配置、修改配置文件、添加.c文件到内核
1、linux内核      www.kernel.org      $:' uname -a      $:' uanme -r      // 查看linux内核版本,开发板上进入linux后是同样的命令。      早起经常使用的版本:linux 2.6.x      开发板上使用的版本:linux 3.4.39      linux最新版本:linux 4.x 2、
Kconfig、Makefile、.config 与编译内核模块添加 -- linux内核
本文参考友善之臂的MICRO2440用户手册 毛毛同学今天学习了驱动程序模块的安装与卸载,在这个过程中毛毛发现,内核的目录中有许多的Kconfig、Makefile文件,但是毛毛不知道为什么需要这些文件,这些文件又是用来做什么的。下面我们就和陶毛毛同学一起来学习下这些文件的作用是什么。  首先我们来学习什么Makefile,什么是Kconfig ,什么是.config  Makefile
Linux内核模块配置文件
以CentOS为例说明: /boot/configure-*为当前Linux内核的模块配置文件,即在当前Linux内核中,系统已启用了哪些模块,哪些内容已编译到Linux内核等等,都可以通过此文件来查看。 例如,查看当前Linux内核是否支持NTFS文件系统,可使用以下命令: [root@localhost kvm]# cat /boot/config-3.10.0-514.
[Allwinner编译内核一]mklichee默认编译与修改.config后带来的问题
引子:       在A20_SDK_1.0中增加linux驱动,因此需要修改.config文件,因此在linux目录下使用make menuconfig配置,配置结束后对lichee进行编译,出现重新配置问题,如图: 解决方法:        经过不同的尝试,对代码结构不是很明白的情况下,用下面的方式避开了这个问题。 1、解压后的linux3.3目录下是不存在.confi
修改git配置文件
vim ~/.gitconfig
openwrt-make menuconfig添加默认配置选项
做openwrt  项目的时候,会将代码上库,当其他人下载的时候,为了简单,我们要想办法只执行一个命令就将所有有关项目的配置自动加载。 而不需要每编译一次就要重新make menuconfig 重新配置一遍。 如果只是单纯的linux内核,直接修改make def_menuconfig就OK了。 但是openwrt 没有这些机制。所以我们就需要想办法做一个我们的默认配置出来。 下面,介绍下
关于Kernel编译配置文件 - makefile .config Kconfig
简单介绍编译liunx Kernel时所用到了三类文件:.config, Makefile,Kconfig文件。
kafka-manager-1.3.3.6-for-windows
Windows下编译好的kafka-manager。需手动修改根目录下的config目录里的applicatoin.conf的zookeeper配置。
linux 内核编译:内核配置原理与常见配置问题的解决方法&&内核版本控制解析
摘要:在进行内核编译的时候,内核配置无疑是其中最为重要的环节,直接决定了编译的内核是否能够满足要求。而且,对于新加入的内核特性,我们往往无法在make menuconfig中找到相应的选项。本文主要为你解决如下问题:1)linux内核编译之前,配置文件的读取顺序是什么?2)对于比较新的内核特性,我们无法在.config之中找到某个配置,应该如何处理?3)如何将自己新添加的驱动添加进入内核?