je débute ds les modules linux et je tente de créer un module avec le code suivant :
#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"); }
je veux le builder et l'installer mais manque de bol ça marche pas :
gcc -c hello.c
insmod ./hello.o
insmod: error inserting 'hello.o': -1 Invalid module format
je suis en root et j'ai la fedora core 3
si vous avez une idée sur la provenance de l'erreur j'en serai ravi
merci
# pneu
Posté par gc (site web personnel) . Évalué à 2.
# Version
Posté par TheBreton . Évalué à 3.
(gcc -c...) ne correspond plus a la facon de faire.
Cela ressemble a l'ancienne facon de faire pour les kernel 2.0,2.2 et 2.4 mais avec la 2.6 les regles d'ecriture des modules on changées.
tu trouvers ici
https://linuxfr.org/forums/31/7904.html(...)
un makefile de base pour compiler un modules et ici
http://lwn.net/Kernel/LDD3/(...)
une version a jour du livre d'ecriture des drivers linux (vu qu'a premiere vu tu travaille avec la seconde edition du livre)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.