Bonjour,
je m'intéresse à la programmation système sous linux, plus précisement à la programmation de driver. Voici la structure mnimale d'un module
que j'ai vu dans un club de developpeur:
#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");
}
je lance la compilation avec la commande suivante: cc -O -DMODULE -D__KERNEL__ -c hello.c ,ceci me donne tout une nation d'erreur.
je remplace "#include <linux/module.h>" par la bibliothèque "#include <linux/init.h>", la compilation marche et j'obtient le fichier objet.
lorque j'essaie de le charger avec insmod Hello.o voila ce que ça me donne comme message "insmod:error inserting "hello.o":-1invalid module format.
lorsque j'utilise module.h et init.h les erreurs se multipluient , pourtant cela ne pas mauvais non plus car 'module.h ' nous fournit les bases pour le déchargement et le déchargement de module et 'init.h' pour l'initialisation
Configuration: Windows XP
Internet Explorer 6.0