openexr-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Openexr-user] libstdc++.so.5 not found


From: Klaus Steden
Subject: Re: [Openexr-user] libstdc++.so.5 not found
Date: Tue, 5 Jul 2005 21:31:42 -0400 (EDT)


Hello,

I think I have managed to compile Openexr under Redhad 9 however I'm having problems running the "exrdisplay" program. When I run it I get the following error: .../libstdc++.so.5: version `GLIBCPP_3.2.2' not found (required by /usr/local/lib/libIlmImf.so.2)

I noticed that it works fine when I'm root.

Any ideas? thanks

Linux has all sorts of funkiness with libc and libc++ versions that I find it difficult to keep them clear between versions.

I'd suggest installing any of the available compat-libstdc++ RPMS and giving it another go ... if they're already installed, check the output of 'ldd' as root and as your user, and see which library file it loads when it works - and check that file's permissions. You may also have to rebuild your dynamic loader's cache using the 'ldconfig' command.

hth, Klaus


Hi Klaus,

thanks for your help.
I tried 'ldd' and yes, 'exrdisplay' is actually calling a different version of libstdc++.so.5 when i'm root which is located in /usr/lib.

This is the output from ldd:
From root:
..
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40360000)
...

From user:
..
libstdc++.so.5 => /usr/Softimage/XSI_4.2/Application/mainwin/mw/../misc/linux/gcc/fixed3/lib/libstdc++.so.5 (0x40360000)
..
Do I have to reinstall openexr with some different options to make sure that I use the this library as a user? Why would it use this library and not the one in /usr/lib?

Usually, 'ldconfig' (at least, I'm assuming you're on a system with that facility) takes care of such things. However, it is always possible to alter the behaviour of the runtime loader using either of the LD_PRELOAD or LD_LIBRARY_PATH (or optionally on IRIX - LD_LIBRARYN32_PATH) environment variables.

I would surmise that by the presence of an XSI path in your ldd output, your normal user account uses the LD_LIBRARY_PATH variable, and places the path to the libstdc++.so.5 that comes bundled with XSI earlier in the path than /usr/lib; not so with root, which is why it works for root.

It may not be the XSI environment - so don't necessarily point the finger at that application - but I'd be fairly willing to believe that your normal user account sets LD_LIBRARY_PATH, and that's the source of the discrepancy.

hth,
Klaus




reply via email to

[Prev in Thread] Current Thread [Next in Thread]