Учитывая список возможностей ядра, я хочу создать минимальную конфигурацию Linux, поддерживающую все данные функции (и соответствующие зависимости), но не более того.
Есть ли способ создать allnoconfig и инструмент для включения функций по одной?
(Я мог бы отредактировать .config
файл, но это не получило бы правильные зависимости. Я мог бы использовать make *config
, но, насколько я знаю, они работают только интерактивно или создают некоторую конфигурацию по умолчанию.)
Ответы:
Если вам нужно сделать это не в интерактивном режиме, вы можете использовать make oldconfig или make olddefconfig. make * config исправит зависимости, и они не такие подробные, как, скажем, menuconfig. (В противном случае menuconfig идеально подходит для включения функций одна за другой, он даже включает тексты справки!)
make oldconfig запросит любые «новые» параметры конфигурации, поэтому вам нужно будет добавить комментарии, подобные этим, для любых отключенных параметров, если вы хотите работать неинтерактивно:
make olddefconfig, с другой стороны, не запрашивает, а использует значение по умолчанию. Есть также silentoldconfig, но он также спрашивает в некоторых случаях, так что это не так тихо.
от помощи сделать:
Отказ от ответственности: я только попробовал тривиальный тест удаления опций для некоторых библиотек, которые я знал, были необходимы. Они были добавлены обратно olddefconfig и oldconfig. Я не знаю, как это относится к большей конфигурации.
В любом случае, я полагаю, вы уже рассматривали возможность использования make localmodconfig или чего-то в этом роде, прежде чем начать это? Я не пытался создать минимальную конфигурацию в течение многих лет, но я помню, что было несколько неочевидных способов создания абсолютно непригодных для использования ядер. :)
источник
Начиная с ядра 2.6.29, есть скрипт, который вы можете найти в
/kernel_extracted_dir/scripts/config
Например
(Чтобы отдать должное, я взял пример из этого блога )
У вас есть следующие варианты (скопировано из справки)
источник