module.o module.ko

КПК с Linux, установка Linux на iPaq и другие модели, программы
Закрыто
SherbinaVitaly
Аспирант (2 lvl)
Сообщения: 80
Зарегистрирован: Пт окт 21, 2005 00:19

module.o module.ko

Сообщение SherbinaVitaly » Пт янв 26, 2007 09:48

А теперь уважаемые знатоки - вопрос:
компилю ядро... мое животное генерит .o модули а хотелось бы .ko - как отучить зверька так подло поступать? :)
Zaurus SL-C3000, Pretec WiFi, Chi Mey GSM/GPRS

duckworld
Студент (1 lvl)
Сообщения: 24
Зарегистрирован: Пт апр 21, 2006 09:26

Сообщение duckworld » Пт янв 26, 2007 10:08

На сколько я понимаю, в ветке ядер 2.4.х модули .о, а ветке 2.6.х - .ко
Модули к какому ядру собираешь?

SherbinaVitaly
Аспирант (2 lvl)
Сообщения: 80
Зарегистрирован: Пт окт 21, 2005 00:19

Сообщение SherbinaVitaly » Пт янв 26, 2007 10:10

2.6.16 (
Zaurus SL-C3000, Pretec WiFi, Chi Mey GSM/GPRS

duckworld
Студент (1 lvl)
Сообщения: 24
Зарегистрирован: Пт апр 21, 2006 09:26

Сообщение duckworld » Пт янв 26, 2007 10:35

Все модули так собираются?
Работают ли после сборки?

SherbinaVitaly
Аспирант (2 lvl)
Сообщения: 80
Зарегистрирован: Пт окт 21, 2005 00:19

Сообщение SherbinaVitaly » Пт янв 26, 2007 10:58

собираются все модули анналогично
не работают)
щас собрал нужные модули принудительно пофайлам.... вроде то... синиго экрана небыло... функциональность модуля сохранена
Zaurus SL-C3000, Pretec WiFi, Chi Mey GSM/GPRS

duckworld
Студент (1 lvl)
Сообщения: 24
Зарегистрирован: Пт апр 21, 2006 09:26

Сообщение duckworld » Пт янв 26, 2007 11:01

Я тут нарыл вот что:

Пример 2-2. Makefile для модуля ядра

obj-m += hello-1.o

Для того, чтобы запустить процесс сборки модуля, дайте команду make -C /usr/src/linux-`uname -r` SUBDIRS=$PWD modules (от переводчика: если у вас в каталоге /usr/src присутствует символическая ссылка linux на каталог с исходными текстами ядра, то команда сборки может быть несколько упрощена: make -C /usr/src/linux SUBDIRS=$PWD modules). На экран должно быть выведено нечто подобное:

[root@pcsenonsrv test_module]# make -C /usr/src/linux-`uname -r` SUBDIRS=$PWD modules
make: Entering directory `/usr/src/linux-2.6.x
CC [M] /root/test_module/hello-1.o
Building modules, stage 2.
MODPOST
CC /root/test_module/hello-1.mod.o
LD [M] /root/test_module/hello-1.ko
make: Leaving directory `/usr/src/linux-2.6.x


Обратите внимание: в ядрах версии 2.6 введено новое соглашение по именованию объектных файлов модулей. Теперь, они имеют расширение .ko (взамен прежнего .o), что отличает их от обычных объектных файлов. Дополнительную информацию по оформлению Makefile-ов модулей вы найдете в linux/Documentation/kbuild/makefiles.txt. Обязательно прочтите этот документ прежде, чем начнете углубляться в изучение Makefile-ов.

Может поможет. Может проблема в .makefile?
А вообще советую почитать вот это:
http://www.opennet.ru/docs/RUS/lkmpg26/

SherbinaVitaly
Аспирант (2 lvl)
Сообщения: 80
Зарегистрирован: Пт окт 21, 2005 00:19

Сообщение SherbinaVitaly » Пт янв 26, 2007 11:07

читал) на моем завре выдает
СС [M] /root/test_module/hello-1.o
Zaurus SL-C3000, Pretec WiFi, Chi Mey GSM/GPRS

SherbinaVitaly
Аспирант (2 lvl)
Сообщения: 80
Зарегистрирован: Пт окт 21, 2005 00:19

Сообщение SherbinaVitaly » Пт янв 26, 2007 11:08

помогает
make root/test_module/hello-1.mod.с
тогда компилит нормально
CC /root/test_module/hello-1.mod.o
LD [M] /root/test_module/hello-1.ko
Zaurus SL-C3000, Pretec WiFi, Chi Mey GSM/GPRS

SherbinaVitaly
Аспирант (2 lvl)
Сообщения: 80
Зарегистрирован: Пт окт 21, 2005 00:19

Сообщение SherbinaVitaly » Пт янв 26, 2007 11:09

вроде работает щас проверяю сделанный патч) заработает на все 100 - сразуже сообщу)
Zaurus SL-C3000, Pretec WiFi, Chi Mey GSM/GPRS

Закрыто

Вернуться в «КПК и смартфоны на Linux: Zaurus, планшеты Nokia, прочее»