2015-03-09 2 views
1

Я пытаюсь скомпилировать ядро ​​Linux и использовать собственный файл .config.make oldconfig переписывать значение в .config

Поэтому я копирую .config в свою папку, где находится исходный код ядра, и запускаю «make oldconfig» в файле, чтобы узнать, не пропал ли я что-нибудь. Тем не менее, представляется, что делать это изменяет некоторые из моих ценностей обратно к тому, что они были, прежде чем я их редактировал:

< CONFIG_TRACEPOINTS=y 
--- 
> CONFIG_TRACEPOINTS=n 
< # CONFIG_DEBUG_RODATA is not set 
< # CONFIG_DEBUG_SET_MODULE_RONX is not set 
--- 
> CONFIG_DEBUG_RODATA=n 
> CONFIG_DEBUG_SET_MODULE_RONX=n 

Как я могу получить oldconfig сохранить значения, как они были изменены?

Благодаря

+0

делать 'сделать menuconfig', скопируйте' .config', а затем сделать 'сделать menuconfig' снова –

+0

Когда я копирую файл, запустите oldconfig, измените значения обратно и запустить oldconfig снова он делает то, что я написал выше. Изменены только три значения. Я также попытался запустить make mrproper, но безрезультатно. – Jordan

+0

Вы установили 'CONFIG_TRACEPOINTS = n' вручную в' .config'? –

ответ

1

Обычно ядро ​​варианты конфигурации зависит от других опций конфигурации. Таким образом, даже если отключить один из вариантов конфигурации, так как его включен какой-либо другой вариант конфигурации он вернется к своему исходному значению после выполнения make oldconfig

В случае CONFIG_TRACEPOINTS зависит от того, или установить несколько других флагов TRACING [=y] || BLK_DEV_IO_TRACE [=y] && TRACING_SUPPORT [=y] && FTRACE [=y] && SYSFS [=y] && BLOCK [=y]

Попробуйте установить один на один из них на =n вместе с CONFIG_TRACEPOINTS=n и посмотреть, сохраняется ли его после выполнения make oldconfig. Для меня установка CONFIG_FTRACE=n работало

Как найти зависимость. Запустить make menuconfig. Нажмите /, чтобы найти опцию конфигурации и посмотреть Selected by. Это флаги конфигурации, которые также устанавливают ваш вариант конфигурации. Посмотрите их текущее значение рядом с ними. Напр. выше вы можете видеть, что TRACING_SUPPORT установлен в y

+1

Да, похоже, что для меня была зависимость от CONFIG_FTRACE. благодаря – Jordan