Ich möchte ein ARM-Kernel-Modul auf meinem X 86 Ubuntu Linux kompilieren. Ich habe Kernel-Quelle heruntergeladen (Linux 2.6.26 seit Ziel-ARM-Maschine diese Linux-Version ausgeführt wird). und ich apt-get'ed Arm Cross-Compiler. Wie du siehst.Kreuz kompilieren Linux-Kernel-Modul für ARM auf x86 Ubuntu
[email protected]:/var/www/module_test# arm-linux-gnueabi-
arm-linux-gnueabi-addr2line arm-linux-gnueabi-cpp-4.5
arm-linux-gnueabi-gcov-4.5 arm-linux-gnueabi-ld.gold
arm-linux-gnueabi-ranlib arm-linux-gnueabi-strip
arm-linux-gnueabi-ar arm-linux-gnueabi-elfedit
arm-linux-gnueabi-gprof arm-linux-gnueabi-nm
arm-linux-gnueabi-readelf arm-linux-gnueabi-as
arm-linux-gnueabi-gcc arm-linux-gnueabi-ld
arm-linux-gnueabi-objcopy arm-linux-gnueabi-size
arm-linux-gnueabi-c++filt arm-linux-gnueabi-gcc-4.5
arm-linux-gnueabi-ld.bfd arm-linux-gnueabi-objdump
arm-linux-gnueabi-strings
finden Sie das Makefile für meine Kernel-Modul (hello_module.ko) Kompilation (für meine x86-Maschine) und das funktioniert gut.
obj-m += hello_module.o
KDIR := /lib/modules/$(shell uname -r)/build
#PWD:=$(shell pwd)
all:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
clean:
rm -rf *.o *.ko *.mod.* .c* .t*
jetzt, was muss ich arbeiten Makefile um ein Kernel-Modul für Linux 2.6.26 für ARM zu überqueren in meiner ursprünglichen ändern zu kompilieren?
und was ist der Unterschied zwischen Linux-Quelle und Linux-Header-Quelle? Ich habe diese jedes Mal gesehen, wenn ich einige Kernel-Sachen kompiliere, aber ich verstehe es immer noch nicht.
Ich habe einige Artikel gegoogelt aber es wird nicht helfen ...
http://raspberrypi.stackexchange.com/questions/192/how-do-i-cross-compile-the-kernel-on-a-ubuntu-host –