Не получается собрать модуль

Аватар пользователя Odissey

Написал простенький модуль типа Hello World, пытаюсь собрать выдает ошибки.

система - ASPLinux 10.
исходники ядра поставил как описано в faq`e. (создал еще и ссылку на /usr/src/linux)
( при установке ставится только на архитектуру i686 (возможно в этом весь и трабл))
на всякий случай поставил еще и glibc-kernheaders*.rpm вместе с kernel-util

код модуля:
//hello-2.6.c
#include
#include
#include

MODULE_LICENSE("GPL");

static int __init my_init(void)
{
printk("Hello world\n");

return 0;
};

static void __exit my_cleanup(void)
{
printk("Good bye\n");
};

module_init(my_init);
module_exit(my_cleanup);

код Makefile`а
obj-m := hello-2.6.o

компиляция:
# make -C /usr/src/linux SUBDIRS=`pwd` modules

выдает что не находит заголовочные файлы в катологе asm/

ага, иду неправильным путем - создаю символическую ссылку каталог asm на asm-i386 в исходниках
о!чудо помогает, файлы теперь находит
но (путь то неверный) имею теперь отсутствие scripts... и т.д.

что то нет то , вот только где ? =).

Аватар пользователя AlexRKononoff

Re: не получается собрать модуль

Здесь подключать config.h не нужно. Смотри строку "3:#include "
А чтоб не терялись хедеры из /asm установите glibc-kernheaders.

Аватар пользователя Odissey

Re: не получается собрать модуль

glibc-kernheaders уже стоял. я еще про это в первый раз писал.
убрал config.h , видимых результатов нет

Аватар пользователя Odissey

Re: не получается собрать модуль

такое подозрение что нужен glibc-kernheaders для 686 архитектуры, только вот найти его никак немогу

Аватар пользователя RedBeard

Re: не получается собрать модуль

Odissey писал(а):
такое подозрение что нужен glibc-kernheaders для 686 архитектуры, только вот найти его никак немогу

На kernel.org посмотри. А вообще конечно, это как собирать. Для сборки модулей лучше брать ядро не готовое, а из исходников, тогда и все нужные .h на месте будут, и соберется вместе с ядром под нужную архитектуру. Похоже, просто не с того конца ты веревочку потянул...

RSS-материал