[Samba] [ANNOUNCE] Samba 3.2.2 Available for Download

Nicholas Brealey nick at brealey.org
Fri Aug 22 21:01:03 GMT 2008


On Solaris I think the best option for packages which have a directory 
structure like:

package/bin
package/lib

is to link the executables with:
-R$ORIGIN/../lib

(In a Makefile use: LDFLAGS = -R\$$ORIGIN/../lib)

This means the package can installed anywhere and still pick up the
correct libraries.

Using LD_LIBRARY_PATH or crle is bad practice.

On Linux you can get similar results by linking with:

-Wl,-zorigin,-rpath,$ORIGIN/../lib

(In a Makefile use: LDFLAGS = -Wl,-zorigin,-rpath,\$$ORIGIN/../lib)

The use of $ORIGIN is an unfortunate design choice because of $ having a 
special meaning in shells and make. In can be hard or impossible to work 
out the correct level of quoting required with configure scripts so it 
is often easiest just to edit the Makefiles after they have been 
generated by the configure script. libtool is a real pain: I have not 
yet worked out how to get libtool to use $ORIGIN in the RUNPATH.


Nick

James Kosin wrote:
> -----Original Message-----
> From: Daniel Eischen [mailto:eischen at vigrid.com] 
> Sent: Friday, August 22, 2008 3:34 PM
> To: James Kosin
> Cc: Brian H. Nelson; samba at lists.samba.org
> Subject: RE: [Samba] [ANNOUNCE] Samba 3.2.2 Available for Download
> 
>> Using -rpath/-R is the norm for Solaris packages.  Samba
>> already is built with knowledge of where it is installed
>> and where its lib, data, var, etc directories reside.
>>
>> What is _not_ the norm, is having to set LD_LIBRARY_PATH in
>> order for your applications to work.  Take a look at all
>> the packages at sunfreeware.com - they are all built for
>> /usr/local and, at least from hundred or so packages I've
>> installed from there, none require LD_LIBRARY_PATH to work
>> when their libraries are in /usr/local/lib.
>>
>> -- 
>> DE
> 
> Actually, I'll have to check to see if Michael back-ported the configure
> option to specify the destination directory for the libraries.  The
> default seems to be in the %prefix/lib/samba directory with many
> packages moving them to the %prefix/lib directory and keeping the rest
> in the %prefix/lib/samba structure.
> 
> James K.
> 



More information about the samba mailing list