[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#841420: --enable-default-pie breaks kernel builds



I agree with Eric; while the workaround is to back rev the gcc and its associated packages, I also build kernels straight from kernel.org, usually within hours of their availability and this has been working for me for many years, and it is not sufficient to justify this change by saying doing so "isn't a good idea." A change of functionality of this scope warrants a minor version number increase, this change was not merely a bug fix.

As the kernel is the most important code gcc is ever likely to compile on debian or any other distro for that matter, this change should be backed out, and not reintroduced UNTIL the *official* kernel source is ready for it.

-- sRw

On 10/21/2016 06:43 AM, Wolfgang Walter wrote:
On Friday, 21 October 2016 14:45:25 CEST Ritesh Raj Sarraf wrote:
The Debian kernel packages still have a dependency on gcc-5, which may mean
that the kernels are currently only built/supported with gcc-5.
vanilla kernels (Linus' tree and the stable ones) could be compiled just fine
with gcc 6.2.0-6 and that now fails.

I still think this is a major regression and regard gcc 6.2.0-7 simply as
broken.

On Thu, 2016-10-20 at 11:22 -0500, S R Wright wrote:
Concurring with Wolfgang;  pulling the source straight from kernel.org
and using identical .config files will work with 6.2.0-6 but fail with
6.2.0-7.   I was able to build and install 4.8.3 with no issues after
back-revving gcc et. al. to 6.2.0-6

-- sRw

On 10/20/16 11:09, Wolfgang Walter wrote:
Hello,

with this version of gcc-6 I can't build vanilla kernels any more. It
fails
with even with CC_STACKPROTECTOR_STRONG disabled:

scripts/kconfig/mconf  Kconfig
configuration written to .config

*** End of the configuration.
*** Execute 'make' to start the build or try 'make help'.

ksrc@ei:~/build/kernels/linux-4.8.3$ make
scripts/kconfig/conf  --silentoldconfig Kconfig
    CHK     include/config/kernel.release
    CHK     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


I think this is a major regression if you can't build vanilla and stable
kernels any more.

Regards,
Regards,


Reply to: