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