poldy
18.06.2005, 10:08
Hallo alle zusammen,
ich lese mich gerade ein bischen ein in die Kernel und Modul Programmierung ein.
hab dazu das Buch o'reilly Linux Deviece drivers von 1998. (Kernel 1.2 und 2.0)
Ich wollte mal das erste modul dann kompilieren (ein einfaches Hello World) mit kprint
und soweiter.#define MODULE
#include <linux/module.h>
int init_module (void)
{
printk("<1>Hello, World\n");
return 0;
}
void cleanup_module(void)
{
printk("<1>Goodbye cruel World\n");
}
Das compilieren sollte mit gcc -c prog.c geschehen. Es kamen aber eine Latte von Fehlermeldungen. (liegt wohl daran das ich den Kernel 2.4 benutze)
Nachdem Ich die Schalter -D__KERNEL__ und -DMODULE mitbenutzt habe war nur noch eine Fehlermeldung da:
hello_world.c:1:1: Warnung: "MODULE" redefined
<command line>:5:1: Warnung: this is the location of the previous definition
In file included from /usr/include/linux/module.h:20,
from hello_world.c:2:
/usr/include/asm/module.h:54:2: #error unknown processor family
Ich hab schon "gegoogelt" wie blöde finde aber nichts passendes. Kann mir jemand Links,
Literaturvorschläge,Tips o.ä. geben. Wäre super.
Bitte jetzt aber keine Belehrung wie ( wenn man noch nicht mal alle Schalter vom Compiler kennt sollte man auch die Finger vom Kernel lassen ;) )Das ist mir alles schon bewusst. Ich will mich ja erst "reinlesen".
Gruß POLDY
ich lese mich gerade ein bischen ein in die Kernel und Modul Programmierung ein.
hab dazu das Buch o'reilly Linux Deviece drivers von 1998. (Kernel 1.2 und 2.0)
Ich wollte mal das erste modul dann kompilieren (ein einfaches Hello World) mit kprint
und soweiter.#define MODULE
#include <linux/module.h>
int init_module (void)
{
printk("<1>Hello, World\n");
return 0;
}
void cleanup_module(void)
{
printk("<1>Goodbye cruel World\n");
}
Das compilieren sollte mit gcc -c prog.c geschehen. Es kamen aber eine Latte von Fehlermeldungen. (liegt wohl daran das ich den Kernel 2.4 benutze)
Nachdem Ich die Schalter -D__KERNEL__ und -DMODULE mitbenutzt habe war nur noch eine Fehlermeldung da:
hello_world.c:1:1: Warnung: "MODULE" redefined
<command line>:5:1: Warnung: this is the location of the previous definition
In file included from /usr/include/linux/module.h:20,
from hello_world.c:2:
/usr/include/asm/module.h:54:2: #error unknown processor family
Ich hab schon "gegoogelt" wie blöde finde aber nichts passendes. Kann mir jemand Links,
Literaturvorschläge,Tips o.ä. geben. Wäre super.
Bitte jetzt aber keine Belehrung wie ( wenn man noch nicht mal alle Schalter vom Compiler kennt sollte man auch die Finger vom Kernel lassen ;) )Das ist mir alles schon bewusst. Ich will mich ja erst "reinlesen".
Gruß POLDY