Crea un Makefile. Compilar módulos con GCC a pelo es complicadillo.
El Makefile es sencillo:
$ nano Makefile (o el editor que más cómodo te resulte):
Código:
obj-m += hello-1.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
Una cosa debajo de all: y clean: y antes de make, usa tabuladores, ya que si usas espacios no va a funcionar.
Luego para compilar haces:
$ make
Y ya para insertar el módulo
$ sudo insmod hello-1.ko
Sólo el último paso debes hacerlo como root.
De todas formas, los módulos antes de nada tienen que incluir la licencia, tienes que escribir:
Código:
MODULE_LICENSE("GPL");
justo debajo de los #includes. Si no, cada vez que cargues tu módulo, el kernel se quejará diciendo que lo estás deshonrando.
Vía dmesg podrás ver los resultados de este hello-1.ko