Hi folks! Nicholas Brealey wrote: > 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.
Well, we had the discussion of whether to use rpath or LD_LIBRARY_PATH (or ld.so.conf) already on this and/or the samba-technical mailing list. (I should look up that thread...) > James Kosin wrote: > >-----Original Message----- > >From: Daniel Eischen [mailto:[EMAIL PROTECTED] > > > >>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. Well on the other hand, in Linux distributions, it is considered bad practise to link using an RPATH. You either put your libs into /usr/lib or /usr/local/lib or else use a ld.so.conf file. So there are advocates for and more significantly against each of rpath and LD_LIBRARY_PATH. I decided not to compile with an RPATH because at that time most people argued that this is a bad thing. 1. easiest solution: put libs into folder searched by dynamic linker (e.g. /usr/lib) 2. next solution: use LD_LIBRARY_PATH when installing to /some/package/dir (or use an ld.so.conf file when available) 3. modify LDFLAGS to use an rpath. I had the plan to provide the option of linking with an rpath as a configure option. But it is not so easy to get it right for all supported platforms (Nicholas only mentioned solaris and Linux...). And I did not have the time yet to complete this in an upstream compliant manner. Patches welcome!! > James Kosin wrote: > >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. * creation and installation of shared libs as filename = SONAME and symlink .so --> .so.VERSION is fixed in samba 3.2.2. (Bug #5592) * splitting of libdir into libdir (for the libs) and modulesdir (for shared modules and such) is done in v3-devel / v3-3-test. This probably won't go into 3.2.X since it is a new feature and not really a bug. This will be 3.3.0 (planned for Dec 15, 2008). Thanks for your thougths and comments. This is much appreciated. Cheers - Michael -- Michael Adam <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen phone: +49-551-370000-0, fax: +49-551-370000-9 AG Göttingen, HRB 2816, GF: Dr. Johannes Loxen http://www.SerNet.DE, mailto: Info @ SerNet.DE
pgpVo0Cv87h4V.pgp
Description: PGP signature
-- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/listinfo/samba
