Do I need to re-compile software if I update the kernel?
For example, I just compiled qemu, libvirt, and virt-manager, I have realized Slackware 14.2 has updates available for the 4.4. kernel, if I update to the latest, will the software listed above still be compatible or will I need to recompile the software? Thanks!
|
Only software that includes kernel modules will need to be recompiled. VirtualBox and the binary NVidia driver are the two that I know about.
|
In some cases, software on new kernel not work, even latest version, like nvidia or vbox.
You need read changelog in kernel and in software. If kernel version minor (only fixes) it maybe work as stable kernel, but if you upgrade to major version, be careful. |
If you're building software locally, your installed kernel headers need to be the ones that your libc was built against. The actual running kernel can usually be different without it causing problems.
|
Quote:
|
Quote:
That being said, for OP, this won't be one of those situations, because both nvidia and virtualbox have support for the 4.4.x kernel. It doesn't matter if it's 4.4.14 or 4.4.19. They'll work fine after a recompile. EDIT: You can check your SBo packages for anything that contains kernel modules so you know what packages need to be recompiled. Code:
grep ".*\.ko$" /var/log/packages/*SBo* |
Quote:
|
In my Gentoo system the only package that needs headers is glibc. So obviously nothing breaks when headers are upgraded.
|
I think I read somewhere that programs could perhaps make use of constants from the headers, which could then conflict with the ones assumed by glibc. It sounds very theoretical but it isn't actually illegal, is it?
Certainly most distros upgrade the kernel and glibc in lockstep, and LFS treats the kernel headers as one of the four things you shouldn't upgrade between releases (the others are binutils, gcc and glibc). |
All times are GMT -5. The time now is 09:22 AM. |