![]() |
Модераторы: xvr |
![]() ![]() ![]() |
|
Vicul |
|
||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 169 Регистрация: 27.4.2009 Репутация: нет Всего: нет |
Не получается запустить модуль Hello World с учебника. Посмотрите, что неправильно делаю
1. Ядро для SUSE 11.2 у меня по uname: Linux linux-srv 2.6.31.14-0.6-default #1 SMP 2010-12-10 11:18:32 +0100 i686 i686 i386 GNU/Linux 2. т.к. дерева дистрибутива в usr/src не оказалось, скачал все c kernel.org - linux-2.6.31.14.tar.bz2. 3. развернул исходники в /home/temp/linux, там же запустил - make modules-prepare 4. в /home/temp создал Makefile
5. Скопировал исходник hello.c
5. Запускаю make make -C /home/temp/linux SUBDIRS=$PWD modules получаю модуль hello.ko make: Entering directory `/home/temp/linux' CC [M] /home/temp/hello.o Building modules, stage 2. MODPOST 1 modules CC /home/temp/hello.mod.o LD [M] /home/temp/hello.ko make: Leaving directory `/home/temp/linux' 6. Запускаю его и получаю ошибку insmod hello.ko insmod: error inserting 'hello.ko': -1 Invalid module format Где хомутнул? |
||||
|
|||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
посмотрите сначала, что пишется в /var/log/messages
Добавлено через 1 минуту и 18 секунд хм
нельзя у suse свои патчи, накладываемые на ванильное ядро установите через yast пакет kernel-sources -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
Vicul |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 169 Регистрация: 27.4.2009 Репутация: нет Всего: нет |
спасибо сейчас попробую |
|||
|
||||
Vicul |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 169 Регистрация: 27.4.2009 Репутация: нет Всего: нет |
скачнул kernel-source, перенес в рабочий каталог, там запустил
make oldconfig && make prepare Запускаю make, получаю ошибку
|
|||
|
||||
Vicul |
|
||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 169 Регистрация: 27.4.2009 Репутация: нет Всего: нет |
модуль собрался, после того как в дереве прогнал следующие команды
Но сам модуль попрежнему выдает ошибку
|
||||
|
|||||
null56 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 721 Регистрация: 19.3.2008 Репутация: 4 Всего: 12 |
ты поставил исходники от той же версии ядра, что у тебя и запущено?
|
|||
|
||||
Vicul |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 169 Регистрация: 27.4.2009 Репутация: нет Всего: нет |
ставил через Yast
2.6.31.14-0.6.1 по uname: Linux linux-srv 2.6.31.14-0.6-default #1 SMP 2010-12-10 11:18:32 +0100 i686 i686 i386 GNU/Linux Это сообщение отредактировал(а) Vicul - 17.1.2011, 17:13 |
|||
|
||||
null56 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 721 Регистрация: 19.3.2008 Репутация: 4 Всего: 12 |
1) MAKCim, тебя просил сообщение dmesg глянуть, что пишет по поводу загрузки, какие ошибки
2) прогрипуй свой конфиг ядра на параметры
|
|||
|
||||
fish9370 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 15.4.2007 Где: Москва Репутация: 2 Всего: 1 |
и modinfo выведи..
-------------------- undefined |
|||
|
||||
Vicul |
|
||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 169 Регистрация: 27.4.2009 Репутация: нет Всего: нет |
1) MAKCim, тебя просил сообщение dmesg глянуть, что пишет по поводу загрузки, какие ошибки
2)прогрипуй свой конфиг ядра на параметры CONFIG_MODULES=y CONFIG_MODVERSIONS=y 3)modinfo
Это сообщение отредактировал(а) Vicul - 18.1.2011, 18:05 |
||||
|
|||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
Vicul,
возьми config из /boot и кинь в /usr/src/linux под именем .config потом начни собирать ядро make как только пойдет компиляция, через CTRL+C выруби процесс и попробуй заново скомпилировать моудль -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
null56 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 721 Регистрация: 19.3.2008 Репутация: 4 Всего: 12 |
у меня были предположения, что разные версии ядра и исходников, поэтому ядро отвергало модули для другой версии, но вроде похожи версии...
MAKCim, может ему лучше полностью сделать make bzImage && make modules? без установки обоих Добавлено через 9 минут и 44 секунды еще принято, но не обязывает указывать префиксы перед функциями загрузки и выгрузки модуля
но это не решит твоей проблемы, это я так к слову |
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
нет тут важно выполнение начальных скриптов до компиляции -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
Vicul |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 169 Регистрация: 27.4.2009 Репутация: нет Всего: нет |
Вообщем такая фигня, при компиляции модуля make ругается на отсутсутствие файл Module.symvers в дереве. Этот файл создается при сборке ядра, которой у меня и не могло быть.
Вообщем, нашел я этот файл в каталогах и перебросил в корень дерева, все заработало. Всем спасибо! Это сообщение отредактировал(а) Vicul - 19.1.2011, 11:37 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Программирование под Unix/Linux" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |