当我尝试交叉编译内核模块ARM时出现了一些错误:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi-
make -C /lib/modules/4.4.0-57-generic/build M=/home/nari/Bureau modules
make[1] : on entre dans le répertoire « /usr/src/linux-headers-4.4.0-57-generic »
CC [M] /home/nari/Bureau/hello.o
In file included from include/asm-generic/int-ll64.h:10:0,
from ./arch/arm/include/asm/types.h:4,
from include/uapi/linux/types.h:4,
from include/linux/types.h:5,
from include/linux/list.h:4,
from include/linux/module.h:9,
from /home/nari/Bureau/hello.c:1:
include/uapi/asm-generic/int-ll64.h:11:29: fatal error: asm/bitsperlong.h: Aucun fichier ou dossier de ce type
compilation terminated.
scripts/Makefile.build:264 : la recette pour la cible « /home/nari/Bureau/hello.o » a échouée
make[2]: *** [/home/nari/Bureau/hello.o] Erreur 1
Makefile:1420 : la recette pour la cible « _module_/home/nari/Bureau » a échouée
make[1]: *** [_module_/home/nari/Bureau] Erreur 2
make[1] : on quitte le répertoire « /usr/src/linux-headers-4.4.0-57-generic »
Makefile:4 : la recette pour la cible « all » a échouée
make: *** [all] Erreur 2
这是我的makefile:
obj-m += hello.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