Wie kompiliere ich ein Kernelmodul für Raspberry Pi?

Ich habe Probleme beim kompilieren von einem kernel-Modul für raspberry pi. Ich möchte die Erstellung eines "Hallo Welt" - kernel-Modul mit dem raspberry pi selbst.

Ich bin mit raspbian wheezy 3.6.11+.

Ich habe versucht, nach den Anweisungen auf http://elinux.org/RPi_Kernel_Compilation.

Hier ist das Makefile ich bin mit:

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

Hier ist der Quellcode für hello-1.c:

/*  
 *  hello-1.c - The simplest kernel module.
 */
#include <linux/module.h>   /* Needed by all modules */
#include <linux/kernel.h>   /* Needed for KERN_INFO */

int init_module(void)
{
    printk(KERN_INFO "Hello world 1.\n");

    /* 
     * A non 0 return means init_module failed; module can't be loaded. 
     */
    return 0;
}

void cleanup_module(void)
{
    printk(KERN_INFO "Goodbye world 1.\n");
}

Hier ist, was ich bekomme, wenn ich versuche das Projekt:

root@raspberrypi:/home/pi/hello-module# make
make -C /lib/modules/3.6.11+/build M=/home/pi/hello-module modules
make: *** /lib/modules/3.6.11+/build: No such file or directory.  Stop.
make: *** [all] Error 2

Ich habe versucht das erstellen der build-Verzeichnis unter /lib/modules/3.6.11+

make -C /lib/modules/3.6.11+/build M=/home/pi/hello-module modules
make[1]: Entering directory `/lib/modules/3.6.11+/build'
make[1]: *** No rule to make target `modules'.  Stop.
make[1]: Leaving directory `/lib/modules/3.6.11+/build'
make: *** [all] Error 2

Habe ich mit GNU Make 3.81 und gcc (Debian 4.6.3-14+rpi1) 4.6.3 installiert ist. Ich habe auch installiert den linux-source mit

sudo apt-get install linux-source

Irgendwelche Ideen auf, was könnte ich tun, um diese zu kompilieren?

InformationsquelleAutor der Frage user3025582 | 2013-11-23

Schreibe einen Kommentar