goal is to have it compile against any source tree
Ja, Sie können es tun, indem Sie einen compiled source-code path
angeben
ersetzen Sie einfach make -C /lib/modules/$(shell uname -r)/build M=$PWD modules
mit diesem
make -C <path-to-compiled-src-code> M=$PWD modules
make -C /home/vinay/linux-3.9 M=$PWD modules
versuchen Sie es mit folgendem Makefile
Makefile –
# if KERNELRELEASE is defined, we've been invoked from the
# kernel build system and can use its language.
ifneq (${KERNELRELEASE},)
obj-m := new-mod.o
# Otherwise we were called directly from the command line.
# Invoke the kernel build system.
else
KERNEL_SOURCE := /usr/src/linux
PWD := $(shell pwd)
default:
${MAKE} -C ${KERNEL_SOURCE} SUBDIRS=${PWD} modules
clean:
${MAKE} -C ${KERNEL_SOURCE} SUBDIRS=${PWD} clean
endif
Oben können Sie KERNEL_SOURCE := /usr/src/linux
ändern -->an.--> Ihren SR-Code KERNEL_SOURCE := <path to compiled-src-code>
für weitere infos findest du unten likes
Warum brauchen wir beim Erstellen von Kernelmodulen /lib/modules?
Ein einfaches Programm auf Linux-Gerätetreiber
Wie man einen eingebauten Gerätetreiber in Linux erstellt