If it dumps a core, I think you met a known issue of nspr library.
When nspr initializes, it tries to find nspr_use_zone_allocator in all 
dependency libraries.
If one of these libraries is marked as lazy loaded, and it uses nspr in .init, 
it will reenter nspr initialization and crash.

Solutions:
1) Do not use lazy load for these libraries, or export LD_BIND_NOW=1
2) In executable, define a global symbol for nspr_use_zone_allocator, assign it 
to zero.

Ginn

On Jul 13, 2010, at 12:55 AM, Milan Jurik wrote:

> Hi Rod,
> 
> Rod Evans píše v ne 11. 07. 2010 v 22:27 -0700:
>> On 7/11/10 1:35 PM, Milan Jurik wrote:
>>> Hi,
>>> 
>>> I am trying to use FBReader (http://www.fbreader.org/) on OSol, b143.
>>> But the result fails with
>>> 
>>> $ LC_ALL=C FBReader
>>> loading /usr/lib/zlibrary/ui/zlui-gtk.so
>>> ld.so.1: FBReader: fatal: nspr_use_zone_allocator: can't find symbol
>> 
>> Try:
>> 
>>  $ LC_ALL=C LD_DEBUG=files,symbols LD_DEBUG_OUTPUT=/tmp/dbg FBReader
>> 
>> And then inspect the /tmp/dbg.{pid} that produces the
>> nspr_use_zone_allocator error.  You should see who is
>> making the reference, and which libraries are being
>> searched for the definition.
>> 
>> These failures are typically because the object making
>> the reference hasn't defined the dependency it requires
>> that provides the symbol, or the required dependency has
>> been changed and no longer offers the required definition.
>> 
> 
> If I compare "files,symbols", then I do not see minor difference,
> FBReader nspr_use_zone_allocator hunt stats with:
> 
> 02534: 1: symbol=nspr_use_zone_allocator;  dlsym() called from
> file=/usr/lib/mps
> /libnspr4.so; starting at file=/usr/bin/FBReader  
> [...]
> 02534: 1: rescanning for lazy dependencies for symbol:
> nspr_use_zone_allocator
> 
> 
> While, curl contains only the second line.
> 
> Both "FBReader" and "curl" contains:
> 
> 02534: 1: ld.so.1: FBReader: fatal: nspr_use_zone_allocator: can't find
> symbol
> 
> 02536: 1: ld.so.1: curl: fatal: nspr_use_zone_allocator: can't find
> symbol
> 
> But curl is ignoring it and continue. FBReader in more detailed log
> ("files,bindings,detail") a bit later produce:
> 
> 
> 03065: 1: binding file=/usr/lib/libzlcore.so.0.13 (dlsym) to
> file=/usr/lib/zlibrary/ui/zlui-gtk.so (0xfdf30f38:0x20f38): symbol
> 'initLibrary'
> ld.so.1: FBReader: fatal: nspr_use_zone_allocator: can't find symbol
> 
> And FBReader ends.
> 
> Best regards,
> 
> Milan
> 
> _______________________________________________
> tools-linking mailing list
> [email protected]

_______________________________________________
tools-linking mailing list
[email protected]

Reply via email to