0


I am a newbie and I want to change a small option in the networking option (enable DCCP's CCID3).
I used:

make menuconfig

and saved the changes to .config
I have looked through tens and tens of tutorials and questions but none answer my question. I just want to apply this small change to my current kernel. That's it. However, all of the tutorials tell you to build a new kernel (which I do not want to do) and when I attempted to do that by typing

make

in /usr/src/linux-headers-4.4.0-72, I got the following errors:

arch/x86/Makefile:148: CONFIG_X86_X32 enabled but no binutils support Makefile:693: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler scripts/kconfig/conf --silentoldconfig Kconfig * Error during update of the configuration. scripts/kconfig/Makefile:37: recipe for target 'silentoldconfig' failed make[2]: [silentoldconfig] Error 1 Makefile:552: recipe for target 'silentoldconfig' failed make[1]: [silentoldconfig] Error 2 make[1]: * No rule to make target 'arch/x86/entry/syscalls/syscall_32.tbl', needed by 'arch/x86/entry/syscalls/../../include/generated/asm/syscalls_32.h'. Stop. arch/x86/Makefile:199: recipe for target 'archheaders' failed make: *** [archheaders] Error 2

I am really stuck. Please help. Thanks.

2
  • It seems you might be compiling with an older version of the compiler, in which case you need to disable stuff that needs STACKPROTECTOR_STRONG. I would just do this: scripts/config --disable CC_STACKPROTECTOR_STRONG. May 12, 2017 at 16:10
  • This is not a Debian way to build a kernel.
    – Pilot6
    May 12, 2017 at 16:14

2 Answers 2

1

You do need to compile the kernel after changing the config. The config in question is the configuration used to compile the kernel. Its not configuration for the running kernel. Config for a running kernel typically done via the /proc filesystem.

1
  • Correct except for the /proc part - nowadays it's normally /sys.
    – Tilman
    Apr 7, 2020 at 22:00
0

The reason why you just found tutorials on how to compile a new kernel is that it is not possible to just change a little part. You will have to build an entire new kernel.

The way to go is probably to copy over your current kernels configuration (should be located in /boot , e.g. /boot/config-4.4.0-112-generic) to your kernel source tree

cp /boot/config-4.4.0-112-generic /where/your/sources/are/.config

go to your kernel sources and execute

make menuconfig

From there on you will be able to follow any tutorial I guess. There is however quite some work ahead of you (e.g. building the initial ramdisk)

This is the bare metal way to go and build a kernel. Good for educational purposes but not convenient in the long run. There is plenty of information on the web how to do this better (e.g How to compile and install custom mainline kernel)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .