Kernel kann nicht kompiliert werden: Fehler, Kernel unterstützt den PIC-Modus nicht

Kernel kann nicht kompiliert werden: Fehler, Kernel unterstützt den PIC-Modus nicht

Ich habe Probleme beim Neukompilieren meines Kernels. Laden Sie das Quellpaket herunter, entpacken Sie es und führen Sie es aus.

fakeroot make-kpkg kernel_image  

führt mich zum Fehler

               [...]

  CHK     include/generated/utsrelease.h
  UPD     include/generated/utsrelease.h
  CHK     include/generated/package.h
  UPD     include/generated/package.h
  CC      kernel/bounds.s
kernel/bounds.c:1:0: error: code model kernel does not support PIC mode

Das Problem kann möglicherweise durch Ändern der mit erhaltenen Kernelkonfiguration gelöst werden make menuconfig.

Wie man diesen Fehler beseitigt und eine erfolgreiche Kompilierung durchführt

Antwort1

Aushttp://kernel.ubuntu.com/~kernel-ppa/mainline/v4.8-rc2/0002-UBUNTU-SAUCE-no-up-disable-pie-when-gcc-has-it-enabl.patch

Sie könnten den folgenden Patch versuchen:

diff --git a/Makefile b/Makefile
index 5c18baa..e342473 100644
--- a/Makefile
+++ b/Makefile
 @@ -612,6 +612,12 @@ endif # $(dot-config)
 # Defaults to vmlinux, but the arch makefile usually adds further targets
 all: vmlinux
 
+# force no-pie for distro compilers that enable pie by default
+KBUILD_CFLAGS += $(call cc-option, -fno-pie)
+KBUILD_CFLAGS += $(call cc-option, -no-pie)
+KBUILD_AFLAGS += $(call cc-option, -fno-pie)
+KBUILD_CPPFLAGS += $(call cc-option, -fno-pie) 
+
 # The arch Makefile can set ARCH_{CPP,A,C}FLAGS to override the default
 # values of the respective KBUILD_* variables
 ARCH_CPPFLAGS :=

Einige verwandte Debian-Tickets:

Und ein zugehöriger GCC-Bericht:

verwandte Informationen