Ginn, Ginn Chen píše v út 13. 07. 2010 v 05:58 -0600: > 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. >
so, no core dump, simple "exit 1", as visible from dbx run: ld.so.1: FBReader: fatal: nspr_use_zone_allocator: can't find symbol execution completed, exit code is 1 and zlui-gtk.so has some own init section but nothing nspr related. Best regards, Milan > 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]
