Broken locale after upgrade to 6-STABEL from 5-STABLE

Artem Kuchin matrix at itlegion.ru
Thu May 24 09:56:36 UTC 2007


Karol Kwiatkowski wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
> 
> Artem Kuchin wrote:
>> Karol Kwiatkowski wrote:
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA256
>>> 
>>> Artem Kuchin wrote:
>>>> Stanislaw Halik wrote:
>>>>> On Thu, May 24, 2007, Artem Kuchin wrote:
>>>>>> What i don't understand, is how the appropriate 'so'
>>>>>> is selected? How freebsd known which so to load
>>>>>> this
>>>>>> libc.so.5
>>>>>> or this
>>>>>> libc.so.6
> [...snip...]
>> But anyhow,
>> why locale in C does not work? And how 'so' lib is selected for an
>> executable? How OS selected so.5 or so.6 for a executable file?
> 
> My understanding is, it is hardcoded into the executable during
> compilation/linking time. You can check linked libraries with ldd(1)
> command:
> 
> $ ldd `which perl`
> /usr/bin/perl:
>        libperl.so => /usr/local/lib/perl5/5.8.8/mach/CORE/libperl.so
> (0x2807c000)
>        libm.so.5 => /lib/libm.so.5 (0x28192000)
>        libcrypt.so.4 => /lib/libcrypt.so.4 (0x281a7000)
>        libutil.so.7 => /lib/libutil.so.7 (0x281c0000)
>        libc.so.7 => /lib/libc.so.7 (0x281cd000)
> 

Oh, hell... I just realized that i need to rebuild EVERYTHING in EVERY jail after
this upgrade from 5 to 6. Even if something seem to work it does not mean it will not
fail in some rare case.

Still, does not explain why freshly compile locale test in C does not work. Weird.

--
Regards,
Artem



More information about the freebsd-stable mailing list