1

Я попытался собрать ядро Linux 3.0.4 на Ubuntu 11.10 в virtualbox. Вот мои шаги:

  1. Скачать исходный код
  2. tar xjvf linux-source-3.0.0.tar.bz2
  3. cd linux-source-3.0.0
  4. сделать menuconfig, ничего не изменив, но использовать конфигурацию по умолчанию и сохранить в .config
  5. делать

На самом деле я думаю, что это должен быть 3.0.4, потому что из Makefile я мог видеть

VERSION = 3
PATCHLEVEL = 0
SUBLEVEL = 4
EXTRAVERSION =

Затем на этапе 2, который должен сделать модули, произошла ошибка:

ERROR: "__modver_version_show" [drivers/staging/rts5139/rts5139.ko] undefined!
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2

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

2 ответа2

2

__modver_version_show() - это внутренняя функция, которая используется, только если вы не включили CONFIG_MODULE и не включили CONFIG_SYSFS. IOW, только когда у вас есть CONFIG_SYSFS, но нет CONFIG_MODULE в вашем .config, вы увидите эту ошибку.

Для обычных рабочих столов!CONFIG_MODULE && CONFIG_SYSFS - неверная конфигурация.

Учитывая сделанные вами настройки, вы должны сначала скопировать .config вашего ядра, предоставленного вашим дистрибутивом, в верхний каталог исходного кода ядра, а затем выполнить "make oldconfig".

Я не пользователь Ubuntu, чтобы найти ядро вашего дистрибутива .config, пожалуйста, найдите ваш /boot или проверьте, есть ли у вас /proc/kconfig.gz, и скопируйте его (вам нужен zcat, чтобы скопировать kconfig.gz, так как он сжат) в нужное место.

2

При условии, что конфиг Ubuntu,

CONFIG_MODULE=Y
CONFIG_SYSFS=Y

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

Модуль драйвера »Постановка» RTS5139 » <N>

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .