• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Probleme mit eigenem Modul

Hallo,

ich muss für mein Studium ein eigenes Modul schreiben, und um mich langsam hineinzuarbeiten habe ich aus einem Buch folgendes Beispiel versucht:
Code:
#define MODULE
#include <linux/module.h>

int init_module(void) { printk("Hallo"); return 0;}
void cleanup_module { printk("Bye"); }
Das Problem ist nun, dass beim kompilieren mit "gcc -c programm.c"
eine ewig lange Liste mit Fehlern ausgegeben wird, und zwar gehts dabei um die Headerdatei und der mit ihr verknüpften dateien und das in denen lauter errors sind.

Ich benutze ein frisch installiertes Suse 9.2.
Hoffe jemand kennt dieses Problem und kann mir sagen, was ich falsch gemacht habe und wie ich es richtig machen kann :D

MfG
Godlike
 
danke für den tipp, hab jetzt mal das erste beispielprogramm versucht, bekomme aber bei "make" folgende fehlermeldung(en):

make -C /lib/modules/2.6.8-24-default/build SUBDIRS=/root/Ampel modules
make[1]: Entering directory `/usr/src/linux-2.6.8-24-obj/i386/default'
make[1]: *** No rule to make target `modules'. Stop.
make[1]: Leaving directory `/usr/src/linux-2.6.8-24-obj/i386/default'
make: *** [default] Error 2

das Makefile sieht folgendermaßen aus (ist auch aus dem Buch):
Code:
ifneq ($(KERNELRELEASE),)
obj-m := ampel.o

else
KDIR := /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)

default:
	$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
endif
Wobei die .c Datei ampel.c heißt.

Für Hilfe wäre ich wieder dankbar :D, sobald wenigstens das Modul funktioniert, hab ich was, worauf ich aufbauen kann...

edit: Kann es sein, dass das Makefile und die .c Datei in einem ganz spezifischen Ordner sein müssen? Hatte bisher beide im gleichen Ordner in meinem home-Verzeichnis...

MfG
Godlike
 
Oben