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.

  • 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. – Doug Smythies May 12 '17 at 16:10
  • This is not a Debian way to build a kernel. – Pilot6 May 12 '17 at 16:14
0

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.

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)

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.