On Fri, 19 May 2006, Eric Armstrong wrote:

> That's a good process that will probably work
> decently. But then Ara Howard added this cryptic
> note:
>>
>> don't forget to do both of these before compiling
>>
>>  LD_LIBRARY_PATH=/wherever/you/want/lib
>>  LD_RUN_PATH=/wherever/you/want/lib   # most important!
>>
>> if you do this all the stuff you compile it will
>> inter-operate nicely--e.g. ruby extensions--and other
>> users will be able to use it without having their
>> LD_LIBRARY_PATH set. They'll only require PATH.
>>
> I sure this makes sense, but I'm missing the mental
> model--the picture of what's happening--that would
> explain /why/ it makes sense. These variables aren't
> mentioned in the Makefile, so they must be important
> to gcc. But why, if I'm /creating/ the lib as part
> of the process??

it has nothing to do with ruby, the Makefile, or gcc - it's all about your
linker:

man ld.so
man ld
http://groups.google.com/group/comp.lang.ruby/browse_frm/thread/615935bf1489d843/dae3f2dd2fae3e1e?q=LD_RUN_PATH&rnum=6#dae3f2dd2fae3e1e
http://groups.google.com/group/comp.lang.ruby/browse_frm/thread/b0ecc81f80082df8/f651b1d2000dd5e1?q=LD_RUN_PATH&rnum=7#f651b1d2000dd5e1
http://www.visi.com/~barr/ldpath.html


let me know if this doesn't shed some light.

regards.


-a
-- 
be kind whenever possible... it is always possible.
- h.h. the 14th dali lama