Я намагався скомпілювати останнє ядро Linux v4.8.9 на Ubuntu 16.10, і ця помилка постійно з’являється після того, як я зробив .config за замовчуванням, змінив його з menuconfig і запустив make make сам. Я також запустив зробити mrproper, як тільки я відкрутив файл. Це вихід відразу після запуску make:
scripts/kconfig/conf --silentoldconfig Kconfig
SYSTBL arch/x86/entry/syscalls/../../include/generated/asm/syscalls_32.h
SYSHDR arch/x86/entry/syscalls/../../include/generated/asm/unistd_32_ia32.h
SYSHDR arch/x86/entry/syscalls/../../include/generated/asm/unistd_64_x32.h
SYSTBL arch/x86/entry/syscalls/../../include/generated/asm/syscalls_64.h
SYSHDR arch/x86/entry/syscalls/../../include/generated/uapi/asm/unistd_32.h
SYSHDR arch/x86/entry/syscalls/../../include/generated/uapi/asm/unistd_64.h
SYSHDR arch/x86/entry/syscalls/../../include/generated/uapi/asm/unistd_x32.h
HOSTCC arch/x86/tools/relocs_32.o
HOSTCC arch/x86/tools/relocs_64.o
HOSTCC arch/x86/tools/relocs_common.o
HOSTLD arch/x86/tools/relocs
CHK include/config/kernel.release
UPD include/config/kernel.release
WRAP arch/x86/include/generated/asm/clkdev.h
WRAP arch/x86/include/generated/asm/cputime.h
WRAP arch/x86/include/generated/asm/dma-contiguous.h
WRAP arch/x86/include/generated/asm/early_ioremap.h
WRAP arch/x86/include/generated/asm/mcs_spinlock.h
WRAP arch/x86/include/generated/asm/mm-arch-hooks.h
CHK include/generated/uapi/linux/version.h
UPD include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
UPD include/generated/utsrelease.h
CC kernel/bounds.s
kernel/bounds.c:1:0: error: code model kernel does not support PIC mode
/*
Kbuild:45: recipe for target 'kernel/bounds.s' failed
make[1]: *** [kernel/bounds.s] Error 1
Makefile:1015: recipe for target 'prepare0' failed
make: *** [prepare0] Error 2
Я також намагався компілювати параметр -no-pie після команди make, але він створює набір нових помилок, постійно кажучи, що "відсутні цілі". У мене є версія gcc 6.2.0. У мене також встановлено gcc-5, тому що я на початку припускав, що це може бути тому, що gcc був занадто новим, але така ж проблема зберігається і в gcc-5. Хтось із списків розсилки чи іншого форуму зазначив, що проблему було вирішено безпосередньо клонуванням від git, але це також не допомогло в моєму сценарії.
Мені цікаво, якщо хтось інший зіткнувся з цією проблемою, і якщо так, то яке можливе виправлення може бути?
ПРИМІТКА. Я запускаю Ubuntu у Virtualbox на Mac, якщо це може бути можливим джерелом проблем.