在使用gcc-4.8.5编译x86_64架构下的Linux 4.4.15库的简单hello world内核驱动程序时,为什么会出现“致命错误:asm/early_ioremap.h:没有那个文件或目录”的提示?gcc正在查找Linux 4.4.15中不可用的asm/early_ioremap.h文件。有什么想法可以解决这个问题吗?
/opt/gcc-4.8.5-glibc-2.21-p8/x86_64-linux-gnu/bin/x86_64-linux-gnu-gcc -M -MP -MT '/home/obj/src/kernel/hello_world/hello.o' -MT '/home/obj/src/kernel/hello_world/hello.d' -MT 'hello.E' -MT 'hello.S' -I/home/src/kernel/hello_world -I/home/obj/src/kernel/linux-4.4.15/include -I/home/src/inc -I/home/obj/src/kernel/linux-4.4.15/arch/x86/include -D__KERNEL__ -DMODULE -DPACKET_LEAK_TRACING -DSIZEOF_CPU_REGISTER=8 -DNUM_DEV_CF=0 -DNUM_DEV_USB=0 -mtune=nocona -march=nocona -m64 -pipe -std=gnu89 -g -nostdinc -isystem /opt/gcc-4.8.5-glibc-2.21-p8/x86_64-linux-gnu/lib/gcc/x86_64-linux-gnu/4.8.5/include -O2 -fno-strict-aliasing -fno-common -ffreestanding -Wall -Wstrict-prototypes -Wno-trigraphs -Wmissing-format-attribute -Wdisabled-optimization -Wwrite-strings -Wimplicit-int -Wmissing-braces -Wmissing-noreturn -Wundef -Wmissing-field-initializers -Wmissing-declarations -Wmissing-prototypes -Wno-unused-parameter -Winline -mcmodel=kernel -fno-omit-frame-pointer -fno-stack-protector -mno-red-zone -fno-asynchronous-unwind-tables -imacros generated/autoconf.h hello.c -I/home/obj/src/kernel/linux-4.4.15/include/uapi/ -I/home/obj/src/kernel/linux-4.4.15/arch/x86/include/uapi/
In file included from /home/obj/src/kernel/linux-4.4.15/arch/x86/include/asm/realmode.h:5:0,
from /home/obj/src/kernel/linux-4.4.15/arch/x86/include/asm/acpi.h:33,
from /home/obj/src/kernel/linux-4.4.15/arch/x86/include/asm/fixmap.h:19,
from /home/obj/src/kernel/linux-4.4.15/arch/x86/include/asm/apic.h:12,
from /home/obj/src/kernel/linux-4.4.15/arch/x86/include/asm/smp.h:12,
from /home/obj/src/kernel/linux-4.4.15/arch/x86/include/asm/mmzone_64.h:10,
from /home/obj/src/kernel/linux-4.4.15/arch/x86/include/asm/mmzone.h:4,
from /home/obj/src/kernel/linux-4.4.15/include/linux/mmzone.h:856,
from /home/obj/src/kernel/linux-4.4.15/include/linux/gfp.h:5,
from /home/obj/src/kernel/linux-4.4.15/include/linux/kmod.h:22,
from /home/obj/src/kernel/linux-4.4.15/include/linux/module.h:13,
from hello.c:1:
/home/obj/src/kernel/linux-4.4.15/arch/x86/include/asm/io.h:43:31: fatal error: asm/early_ioremap.h: No such file or directory
#include <asm/early_ioremap.h>
^
compilation terminated.