Как создать единый модуль ядра в дереве?

Это зависит от пакета. Emacs не упакован таким образом, который вы можете. Для некоторых пакетов вы можете apt-get install basepackage-doc.

1
задан 26 July 2012 в 15:02

1 ответ

Из исходного каталога верхнего уровня просто укажите путь к имени модуля или директории модуля, например:

make drivers/net/can/usb/peak_usb/

или для более простого примера (драйвер Ethernet e1000 Ethernet): [ ! d1]

make drivers/net/ethernet/intel/e1000/e1000.ko
8
ответ дан 25 May 2018 в 08:14
  • 1
    Просто делать: make drivers/net/can/usb/peak_usb/pcan_usb.ko сделал только pcan_usb.o. Выполнение make drivers/net/can/usb/peak_usb/ && make drivers/net/can/usb/peak_usb/pcan_usb.ko компилирует его, но insmod жалуется на Error: could not insert module drivers/net/can/usb/peak_usb/peak_usb.ko: Invalid module format. dmesg: peak_usb: no symbol version for module_layout – mab 29 July 2012 в 23:38
  • 2
    Вы запускаете это конкретное ядро, и вы уже скомпилировали ядро ​​один раз? Попробуйте также с помощью modprobe. – ish 10 August 2012 в 04:44
  • 3
    Я запускаю упакованное ядро. Компиляция полного ядра работает. но я пытаюсь не скомпилировать полное ядро, а только конкретный модуль ядра. Есть ли цель make, которая «подготавливает» компиляцию одного модуля? modprobe показывает ту же ошибку. – mab 13 August 2012 в 19:08
  • 4
    Согласно stackoverflow вы можете просто использовать make modules SUBDIRS=drivers/net/can/usb/peak_usb или любой другой subdir. Здесь хорошо работает. – Treviño 13 July 2013 в 22:57

Другие вопросы по тегам:

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