Latest Slackware update breaks system - libgnutls.so.26 missing
#162 Henry, Monday, 16 July 2012 12:12 PM (Category: Linux)
(Tags: upgrade slackware)

I did my regular Monday morning check to see if any packages had been updated for Slackware current. Yep, lots. Most had been released last Friday, Friday 13th. The upgrade got halfway through and then did not complete. Any subsequent attempt to upgrade is met with

wget: error while loading shared libraries: libgnutls.so.26:
     cannot open shared object file:
No such file or directory
     ERROR - Package not installed! Not found error!

I thought maybe some libraries needed to be applied, so I rebooted my system. Got the same result, but got an interesting new development. I use fvwm2 as my window manager. I load the pager inside button box. Now, the pager will not load inside the button box, it just sits on top. And gkrellm did not start. This is all probably related to the failed upgrade. I did look inside my fvwm2 logs and found a bunch of things to attend to. Looks like there have been upgrades to fvwm2 over the years and my config file has stayed the same for about 10 years. There are changes I must make. I see a whole bunch of configuration errors in the logs. I'll look at that later. But first I must get my system back into position where I can complete the upgrade. I need to somehow get the libgnutls.so library into action.

I went to /var/log/packages and grepped through the packages looking for libgnutls. The package is gnutls. I read the installation script. It has installed libgnutls.so.28 in /usr/lib. And that has been installed and it all looks good. Aha. That's the problem. Wget hasn't been upgraded yet, and it wants libgnutls.so.26 but that is not available. I think wget gets upgraded later in the slackpkg list, and I bet the upgraded version wants libgnutls.so.28. It's just a timing issue.

Maybe the solution is a very easy one. I created a symbolic link so that libgnutls.so.26 points to the new library:

ln -s libgnutls.so.28.10.0 libgnutls.so.26

and then tried wget. It worked. So I started my Slackware upgrade again, and it continued. It will go ahead and install a new version of wget that uses libgnutls.so.28 and then I can remove that symbolic link. Interesting. I bet it's really hard to structure these upgrades so things get done in the right order. But no matter, I'm just glad that Slackware keeps rolling along.

Once the upgrade finishes, I'll reboot and see if fvwm is back to behaving itself. Then I'll fix my config file.

0 comments