Настройте встроенные модули в кросс-скомпилированном Linux

236
cstricklan

Я на начальных этапах использования кросс-компилятора (ELDK) для сборки встроенной системы Linux из исходного кода ядра. Ядро успешно собрано с make ARCH=powerpc CROSS_COMPILE=powerpc-linux- 44x/virtex5_defconfig и make ARCH=powerpc CROSS_COMPILE=powerpc-linux- uImage.

Я хотел бы включить встроенные модули на этом этапе, скомпилированные на моем хост-компьютере. я бегу

make ARCH=powerpc CROSS_COMPILE=powerpc-linux- modules make ARCH=powerpc CROSS_COMPILE=powerpc-linux- INSTALL_MOD_PATH=/opt/eldk-5.8/powerpc-4xx modules_install 

и убедитесь, что модули по умолчанию, включенные в ядро, собраны и установлены в указанном каталоге.

Мой вопрос: как мне определить, какие модули собираются и устанавливаются с помощью этих двух последних команд? Я хотел бы исключить некоторые из модулей по умолчанию и включить дополнительные модули из отдельного исходного кода, такие как coreutils.

Спасибо за любую помощь, которую вы могли бы предоставить.

0
Вам нужно прочитать файл ядра ** README ** в исходном коде процедуры сборки, т.е. это `make menuconfig`. К слову, символы `ARCH` и` CROSS_COMPILE` могут быть определены как переменные среды оболочки, поэтому вам не нужно вводить их в каждой команде `make` (т. Е.` Export ARCH = powerpc`). sawdust 7 лет назад 0

1 ответ на вопрос

0
cstricklan

Получив ответ на этот вопрос для потомков, я помогу тем, кто может быть таким же невежественным, как и я в то время.

Действительно, как отметили в опилках, добавление встроенных модулей и драйверов может быть настроено с помощью make menuconfig. Многие пакеты могут быть настроены как встроенные (в двоичный файл ядра) или как модуль. В первом случае не было бы необходимости выводить их в корневую файловую систему через make modules_install.

Пользовательские драйверы можно добавить в дерево ядра, включив источник в соответствующую папку, а затем обновив KConfigи Makefileуправляя этой папкой, следуя примеру встроенных пакетов.

Похожие вопросы