On Wed, Sep 27, 2000 at 04:43:37PM -0700, Alexandre Julliard wrote:
> Ove Kaaven <[EMAIL PROTECTED]> writes:
> 
> > 1. Is there a particular reason why libwine_unicode.so can't just be in
> > the same directory as libwine.so, since it's not really a "DLL"? Shouldn't
> > take a special rpath to find it...
> 
> libwine_unicode.so will definitely be in the same directory as
> libwine.so; but this can be a non-standard place, which is why we need
> rpath. In fact libwine and libwine_unicode are the only libraries that
> need it, because they are (should be) the only ones loaded implicitly
> by ld.so.
> 
> At the moment we have the problem that dlls import one another at the
> ELF level, which is why they have to be installed in the same
> directory and with the same rpath as libwine.so. But once import
> tables are working, dlls will only import each other through an
> explicit dlopen using EXTRA_LD_LIBRARY_PATH.


Err, as far as I understand it, we can use multiple -rpaths:
`-rpath DIR'
     Add a directory to the runtime library search path.  This is used
     when linking an ELF executable with shared objects.  All `-rpath'
     arguments are concatenated and passed to the runtime linker, which
     uses them to locate shared objects at runtime.  

> Basically the final situation should be:
> 
> - libwine.so and libwine_unicode.so in $(prefix)/lib
> - all dlls .so in $(prefix)/lib/wine
> - rpath set to $(prefix)/lib
> - EXTRA_LD_LIBRARY_PATH set to $(prefix)/lib/wine

Good to know, it was not yet clear to me ;)

Ciao, Marcus

Reply via email to