[CentOS] Yum messages: /usr/lib/liblzo.so.1 is not a symbolic link

Tue Dec 16 17:43:23 UTC 2008
Filipe Brandenburger <filbranden at gmail.com>

Hi,

On Tue, Dec 16, 2008 at 07:05, William L. Maltby
<CentOS4Bill at triad.rr.com> wrote:
> /sbin/ldconfig: /usr/lib/liblzo.so.1 is not a symbolic link

This message is not generated by "yum", but by "ldconfig" (as the
message itself is actually saying). When "yum" installs a new library,
the RPM contains instructions to run "ldconfig" after installing it,
so that the loader cache is updated and when you run a program that
needs that library it will be found.

One of the steps "ldconfig" does is creating symbolic links for
libraries, using the name that is hardcoded inside the library.

> $ rpm -q --whatprovides /usr/lib/liblzo.so.1
> lzo-1.08-5.el5.rf

The lzo package actually contains a file such as
/usr/lib/liblzo.so.1.0.0 (or similar version number), that file has
"liblzo.so.1" hard-coded as the name to look for inside it (it's the
SONAME), and the RPM also contains the symbolic link,
/usr/lib/liblzo.so.1 -> liblzo.so.1.0.0 (this is the symbolic link
created/updated by ldconfig).

However, in your system, you have a file and not a symbolic link:

> $ls -ld /usr/lib/liblzo.so.1
> -rwxr-xr-x 1 root root 406394 Nov  4 02:39 /usr/lib/liblzo.so.1

Something overwrote that symbolic link and created a file in that
place. Maybe by copying the original /usr/lib/liblzo.so.1.0.0 to
liblzo.so.1, or maybe by doing something else. I've seen this happen
with installation scripts for commercial products, maybe you installed
something that used "lzo" and included a version of it that was
packaged differently than the version you got from RPMforge.

The date of the file might be a clue on when that happened, in that
case, at 2:39am last Novemeber 4th. You can try to look for logs on
your system to see what might have done that.

In any case, the simple fix is to just remove that file (back it up
first, just in case), and run ldconfig again, you will see that the
symbolic link will be properly created.

You may also try to erase and reinstall the lzo RPM, I believe this
would also fix the problem.

HTH,
Filipe