clifto <clifto.DeleteThis@gmail.com> wrote:
> For about the fiftieth time last night I got this:
>
> * Old versions of installed libraries were detected on your system.
> * In order to avoid breaking packages that depend on these old libs,
> * the libraries are not being removed. You need to run revdep-rebuild
> * in order to remove these old dependencies. If you do not have this
> * helper program, simply emerge the 'gentoolkit' package.
> *
> * # revdep-rebuild --library libssl.so.0.9.7
>
> Running the recommended command invariably gives:
>
> There are no dynamic links to libssl.so.0.9.7... All done.
That means it's likely safe to delete /usr/lib/libssl.so.0.9.7*, unless you
have binaries you have compiled yourself (i.e. not through portage) that use
them.
> The only item listed as found:
>
> Checking dynamic linking...
> found /usr/local/lib/libgpac-0.4.2.so
> done.
>
> Re-emerging it doesn't help. Neither does a generic revdep-rebuild.
It's located under /usr/local, which means it's not part of standard gentoo,
but something you have installed yourself. Which also means you have to
keep it updated yourself.
If you already have a libgpac under /usr/lib, chances are that you may be
able to delete the one under /usr/local/lib, unless some binary you
installed manually (again, not through emerge) has an rpath pointing to it.
Finally to double back to what your post started with -- old libraries. I
use a small script to ensure I don't have old versions of a library hanging
around:
--- cut here --- save as "find-old-libs" --- cut here ---
#!/bin/sh
find /lib /usr/lib -type f -name '*.so*' \
| grep -v 'so$' \
| sed 's/\.so.*//' \
| sort >/tmp/duplib1.$$
sort -u </tmp/duplib1.$$ >/tmp/duplib2.$$
diff /tmp/duplib1.$$ /tmp/duplib2.$$ \
| grep '^<' \
| sed -e 's/^< /ls -1 /' -e 's/$/.so*/' \
| sh
rm -f /tmp/duplib1.$$ /tmp/duplib2.$$
--- cut here --- cut here --- cut here ---
The above script will find library versions you have multiple version of,
and if multiple ones are listed, you can usually remove the oldest (first
check with "qfile /path/to/somefilename.so.6.6.6" whether it belongs to a
package), followed by a revdep-rebuild after removal to ensure that packages
that used the old version are rebuilt to use the new.
Regards,
--
*Art