Ich versuche, ein Helloworld-Kernel-Modul (2.6.x) für die ARM-Architektur auf meinem intel x86-Host zu kompilieren.
Die Codesourcery-Toolkette für ARM befindet sich unter: /home/ravi/workspace/hawk/arm-2009q3
Der Kernel-Quellcode befindet sich unter : /home/ravi/arbeitsbereich/hawk/linux-omapl1
Mein Makefile:
ARCH=arm
CROSS_COMPILE=arm-none-linux-gnueabi
obj-m := Hello.o
KDIR := /home/ravi/workspace/hawk/linux-omapl1
PWD := $(shell pwd)
default:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
clean:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) clean
Wenn ich die machen. Die erzeugte .ko ist die meines Host-Rechners, was bedeutet, dass das Makefile den nativen Compiler anstelle des Cross-Compilers aufruft, was mache ich falsch? Die Binärdateien des Cross-Compilers befinden sich in meinem Pfad.