Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 10 Feb 2008 07:35:19 +0100
From:      Dominic Fandrey <kamikaze@bsdforen.de>
To:        "E. J. Cerejo" <ejcerejo@optonline.net>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: libicui18n.so.36 not found, required by "evolution"
Message-ID:  <47AE9B27.2040908@bsdforen.de>
In-Reply-To: <200802092346.23078.ejcerejo@optonline.net>
References:  <47ADE033.7070402@optonline.net> <47ADE2EC.2030906@infracaninophile.co.uk> <47ADEAD2.2030803@bsdforen.de> <200802092346.23078.ejcerejo@optonline.net>

next in thread | previous in thread | raw e-mail | index | archive | help
E. J. Cerejo wrote:
> On Saturday 09 February 2008 13:02:58 Dominic Fandrey wrote:
>> Matthew Seaman wrote:
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA256
>>>
>>> E. J. Cerejo wrote:
>>>> Running FBSD 6.3 and after updating the ports where icu was one of the
>>>> ports to be updated I'm getting the libexec/ld-elf.so.1: Shared object
>>>> "libicui18n.so.36" not found, required by "evolution" error, I can see
>>>> that the new version of icu installed "libicui18n.so.38".  Is there a
>>>> better way to fix this or should I just symlink "libicui18n.so.38" to
>>>> "libicui18n.so.36"?
>>> Nope.  Symlinking shlibs of different ABI versions together is the
>>> wrong answer.  There's a reason the ABI version number was bumped,
>>> and it indicates the new shlib is not compatible with the old one.
>>>
>>> Formally, the correct fix is:
>>>
>>>    # portupgrade -rf icu-\*
>>>
>>> or the equivalent in whatever ports management software you prefer.
>>>
>>> However this is pretty unfortunate as icu is a basic component that
>>> a large number of packages depend upon.  Expect to spend a long time
>>> compiling.
>> The port sysutils/bsdadminscripts installs a script called pkg_libchk that
>> will list you all ports that /really/ need to be rebuild. Many of the ports
>> depending on icu-\* do so indirectly by linking to a library that links to
>> icu, thus it is sufficent to rebuild those directly linking ports.
>> pkg_libchk checks for such direct dependencies and will list you the
>> affected ports.
> 
> I just tried that but unfortunately pkg_libchk didn't work.  It didn't pick up 
> any application when I have a bunch failling to start because of this 
> library.
> 

Are you willing to help me detect the problem?

If so, can you run
# pkg_libchk -m

This turns the false positive checking mechanism off and thus should list 
all ports that currently don't work, plus some that work but don't rely on 
the system to find their libraries, like OpenOffice.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47AE9B27.2040908>