goal is to have it compile against any source tree
oui vous pouvez le faire en fournissant un compiled source-code path
remplacez simplement make -C /lib/modules/$(shell uname -r)/build M=$PWD modules
avec ça
make -C <path-to-compiled-src-code> M=$PWD modules
make -C /home/vinay/linux-3.9 M=$PWD modules
essayez ci-dessous 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
En haut, vous pouvez modifier KERNEL_SOURCE := /usr/src/linux
-->à.--> votre sr-code KERNEL_SOURCE := <path to compiled-src-code>
pour plus d'informations trouver ci-dessous liks
lors de la construction des modules du noyau, pourquoi avons-nous besoin de /lib/modules ?
Un programme simple sur le pilote de périphérique Linux
Comment créer un pilote de périphérique intégré sous Linux