Does this 'path' exist in LD_LIBRARY_PATH or equivilent?
Otherwise ld might not be able to 'find' it when starting the program.
James McKenzie
James... You've just exhausted my technical knowledge. How do I do / find that?
Susan:
For the BASH shell: Type in set and look for the LD_LIBRARY_PATH line. for the CSH/KSH shell: Type in env Look for the LD_LIBRARY_PATH line.
Hopefully, /usr/local/lib is there.
BTW, to make Wine work on a Mac, I have to add this line....
James McKenzie
Typed "set" Did word search on "library." Nothing.
Susan Cragin wrote:
Does this 'path' exist in LD_LIBRARY_PATH or equivilent?
Otherwise ld might not be able to 'find' it when starting the program.
James McKenzie
James... You've just exhausted my technical knowledge. How do I do / find that?
Susan:
For the BASH shell: Type in set and look for the LD_LIBRARY_PATH line. for the CSH/KSH shell: Type in env Look for the LD_LIBRARY_PATH line.
Hopefully, /usr/local/lib is there.
BTW, to make Wine work on a Mac, I have to add this line....
James McKenzie
Typed "set" Did word search on "library." Nothing.
for BASH, it should be export | grep LD_LIBRARY_PATH not "set".
On 12/31/10 11:56 AM, Hin-Tak Leung wrote:
Susan Cragin wrote:
Does this 'path' exist in LD_LIBRARY_PATH or equivilent?
Otherwise ld might not be able to 'find' it when starting the program.
James McKenzie
James... You've just exhausted my technical knowledge. How do I do / find that?
Susan:
For the BASH shell: Type in set and look for the LD_LIBRARY_PATH line. for the CSH/KSH shell: Type in env Look for the LD_LIBRARY_PATH line.
Hopefully, /usr/local/lib is there.
BTW, to make Wine work on a Mac, I have to add this line....
James McKenzie
Typed "set" Did word search on "library." Nothing.
for BASH, it should be export | grep LD_LIBRARY_PATH not "set".
If you are setting the value, not searching for it.
set | grep LIBRARY LD_LIBRARY_PATH=/Applications/Wine.app/Contents/Resources/Lib
is what I get on my Mac (LD_LIBRARY_PATH has to be set due to the UNIXness of Wine.)
James McKenzie
On Fri, Dec 31, 2010 at 06:14:52PM -0700, James McKenzie wrote:
set | grep LIBRARY LD_LIBRARY_PATH=/Applications/Wine.app/Contents/Resources/Lib
is what I get on my Mac (LD_LIBRARY_PATH has to be set due to the UNIXness of Wine.)
Really a properly linked elf binary shouldn't need LD_LIBRARY_PATH be set in order to find its libraries. LD_LIBRARY_PATH should only be used to override the default assignments. (Linux has a complete fubar here, and you have to do something obscure to get LD_LIBRARY_PATH to override the info in the elf image.)
If you run 'objdump -p program' the RPATH entries show which which directories are searched. Additionally $ORIGIN can be used (in RPATH) entries to refer to the directory that contains the program binary.
The RPATH entries typically need to be different for 32bit and 64bit binaries on a 64bit system.
The library names are shown in the NEEDED entries (the value comes from the soname property of the library found when linking the program. This is usually just foo.so, but can contain directory names.
David