Linux - KernelThis forum is for all discussion relating to the Linux kernel.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
root@RoseViolet:/usr/src/linux-stable# make
arch/xroot@RoseViolet:/usr/src/linux-stable# make
arch/x86/Makefile:114: stack-protector enabled but compiler support broken
arch/x86/Makefile:129: CONFIG_X86_X32 enabled but no binutils support
Makefile:656: Cannot use CONFIG_CC_STACKPROTECTOR_REGULAR: -fstack-protector not supported by compiler
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CC kernel/bounds.s
kernel/bounds.c:1:0: error: code model 'kernel' not supported in the 32 bit mode
/*
^
make[1]: *** [kernel/bounds.s] Error 1
make: *** [prepare0] Error 2
86/Makefile:114: stack-protector enabled but compiler support broken
arch/x86/Makefile:129: CONFIG_X86_X32 enabled but no binutils support
Makefile:656: Cannot use CONFIG_CC_STACKPROTECTOR_REGULAR: -fstack-protector not supported by compiler
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CC kernel/bounds.s
kernel/bounds.c:1:0: error: code model 'kernel' not supported in the 32 bit mode
/*
^
make[1]: *** [kernel/bounds.s] Error 1
make: *** [prepare0] Error 2
The system is slackware-current as of 09/14. A similar kernel built on another box with an identical install works fine. This box pukes as above, ergo something is wrong with my PC.
The kernel is the linux-stable git as of today. Gcc is the standard (very reliable) slackware gcc-4.8.3 with Alien Bob's multilib packages. I am not cross compiling.
I don't have a 32 bit kernel, or userland. The system built the kernel I am running on, and more since. This is 64 bit throughout. Stable and working. Now this starts. I will try booting a different distro kernel though.
Well, I tried on the same setup with the original slackware kernel release - same error.
I took out the install cd, and reinstalled the GCC suite of packages. Slackware has this 'upgradepkg --reinstall' option which allows "upgrading" with the same version. That gave me this
Code:
root@RoseViolet:/mnt/cdrom/slackware64/d# cd /usr/src/linux-stable/
root@RoseViolet:/usr/src/linux-stable# time make -j2
arch/x86/Makefile:114: stack-protector enabled but compiler support broken
arch/x86/Makefile:129: CONFIG_X86_X32 enabled but no binutils support
Makefile:659: Cannot use CONFIG_CC_STACKPROTECTOR_REGULAR: -fstack-protector not supported by compiler
HOSTCC scripts/kconfig/conf.o
HOSTCC scripts/kconfig/zconf.tab.o
HOSTLD scripts/kconfig/conf
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../../x86_64-slackware-linux/bin/ld: skipping
incompatible /usr/lib64/gcc/x86_64-slackware-linux/4.8.3/libgcc.a when searching for -lgcc
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../../x86_64-slackware-linux/bin/ld: cannot find -lgcc
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../../x86_64-slackware-linux/bin/ld: skipping
incompatible /usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../libgcc_s.so when searching for -lgcc_s
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../../x86_64-slackware-linux/bin/ld: cannot find -lgcc_s
collect2: error: ld returned 1 exit status
make[2root@RoseViolet:/mnt/cdrom/slackware64/d# cd /usr/src/linux-stable/
root@RoseViolet:/usr/src/linux-stable# time make -j2
arch/x86/Makefile:114: stack-protector enabled but compiler support broken
arch/x86/Makefile:129: CONFIG_X86_X32 enabled but no binutils support
Makefile:659: Cannot use CONFIG_CC_STACKPROTECTOR_REGULAR: -fstack-protector not supported by compiler
HOSTCC scripts/kconfig/conf.o
HOSTCC scripts/kconfig/zconf.tab.o
HOSTLD scripts/kconfig/conf
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../../x86_64-slackware-linux/bin/ld: skipping
incompatible /usr/lib64/gcc/x86_64-slackware-linux/4.8.3/libgcc.a when searching for -lgcc
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../../x86_64-slackware-linux/bin/ld: cannot find -lgcc
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../../x86_64-slackware-linux/bin/ld: skipping
incompatible /usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../libgcc_s.so when searching for -lgcc_s
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../../x86_64-slackware-linux/bin/ld: cannot find -lgcc_s
collect2: error: ld returned 1 exit status
make[2]: *** [scripts/kconfig/conf] Error 1
make[1]: *** [silentoldconfig] Error 2
make: *** No rule to make target `include/config/auto.conf', needed by `include/config/kernel.release'.
Stop.
make: *** Waiting for unfinished jobs....
real 0m4.872s
user 0m3.621s
sys 0m1.044s
]: *** [scripts/kconfig/conf] Error 1
make[1]: *** [silentoldconfig] Error 2
make: *** No rule to make target `include/config/auto.conf', needed by `include/config/kernel.release'.
Stop.
make: *** Waiting for unfinished jobs....
real 0m4.872s
user 0m3.621s
sys 0m1.044s
Some investigations . . .
root@RoseViolet:/usr/src/linux-stable# file /usr/lib64/gcc/x86_64-slackware-linux/4.8.3/libgcc.a
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/libgcc.a: current ar archive
root@RoseViolet:/usr/src/linux-stable# file /usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../libgcc_s.so
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../libgcc_s.so: symbolic link to `libgcc_s.so.1'
root@RoseViolet:/usr/src/linux-stable# file
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../libgcc_s.so.1
/usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../libgcc_s.so.1: ELF 64-bit LSB shared object, x86-64,
version 1 (SYSV), dynamically linked, stripped
root@RoseViolet:/usr/src/linux-stable# ls -lh /usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../libgcc_s.so.1
-rwxr-xr-x 1 root root 87K May 29 2014 /usr/lib64/gcc/x86_64-slackware-linux/4.8.3/../../../libgcc_s.so.1*
Which, to my mind, is worse again. I have no reason to suspect the dvdrom. After I installed this box, I installed the other one from the same dvd and that works fine.
So, not for the first time, I am retiring in defeat. I will boot on the DVD and thoroughly check the disk, reinstall once more, and diff with the backup. That might sort it.
Ztcoracat, you're a star! What search did you pull to find that?
That link you sent about 32dev.sh proved to be the thing!
What a crazy M$ like gotcha to trip over! Why didn't I trip over it last September when I installed here? It's churning away here kernel building.
I suppose that's part of Alien Bob's package to allow you to build 32 bit code. The only 32 bit thing I ever build is wine. It's also on a box that builds away without trouble. But it's close enough to a solution for me to stop messing.
Cannot use CONFIG_CC_STACKPROTECTOR_REGULAR: -fstack-protector not supported by compiler
What is your gcc version? You need gcc 4.2 for that option. From the help page in make menuconfig:
Code:
CONFIG_CC_STACKPROTECTOR_REGULAR:
Functions will have the stack-protector canary logic added if they have an 8-byte or larger character array on the stack.
This feature requires gcc version 4.2 or above, or a distribution
gcc with the feature backported ("-fstack-protector").
On an x86 "defconfig" build, this feature adds canary checks to
about 3% of all kernel functions, which increases kernel code size
by about 0.3%.
Ztcoracat, you're a star! What search did you pull to find that?
That link you sent about 32dev.sh proved to be the thing!
What a crazy M$ like gotcha to trip over! Why didn't I trip over it last September when I installed here? It's churning away here kernel building.
I suppose that's part of Alien Bob's package to allow you to build 32 bit code. The only 32 bit thing I ever build is wine. It's also on a box that builds away without trouble. But it's close enough to a solution for me to stop messing.
Thank You business_kid-
Glad that link was just the right thing.
-:-Looking up error codes can be a real gem. Persistance is the key alongside a dose of good fortune.-:-
Code:
kernel/bounds.c:1:0: error: code model 'kernel' not supported in the 32 bit mode
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.