docs/88454: [patch] Porter's Handbook: Update sec. on Shared Libraries

Volker Stolz vs at FreeBSD.org
Thu Nov 3 14:30:28 UTC 2005


>Number:         88454
>Category:       docs
>Synopsis:       [patch] Porter's Handbook: Update sec. on Shared Libraries
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-doc
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Nov 03 14:30:12 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Volker Stolz
>Release:        FreeBSD 4.11-STABLE i386
>Organization:
Lehrstuhl für Informatik II; RWTH Aachen Universität
>Environment:
System: FreeBSD menelaos.informatik.rwth-aachen.de 4.11-STABLE FreeBSD 4.11-STABLE #23: Fri Jan 14 09:26:11 CET 2005 root at menelaos.informatik.rwth-aachen.de:/usr/obj/usr/src/sys/MENELAOS i386


>Description:
Clarify unexpected consequences of setting LDCONFIG_DIRS.
Please review, I hope I got the markup right (compiling works).
>How-To-Repeat:
>Fix:
--- shlibs.diff begins here ---
Index: book.sgml
===================================================================
RCS file: /home/dcvs/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml,v
retrieving revision 1.625
diff -u -u -r1.625 book.sgml
--- book.sgml	2 Nov 2005 21:43:56 -0000	1.625
+++ book.sgml	3 Nov 2005 14:22:43 -0000
@@ -3869,6 +3869,16 @@
 	<programlisting>INSTALLS_SHLIB= yes
 LDCONFIG_DIRS=  %%PREFIX%%/lib/foo %%PREFIX%%/lib/bar</programlisting>
 
+	<para>Remember that non-standard directories will not be passed to
+	  <literal>/sbin/ldconfig</literal> on a reboot! If any port really
+	  needs this to work, install a startup-script as
+	  <literal>x11/kdelibs3</literal> does. Please double-check, often
+	  this is not necessary at all or can be avoided through
+	  <literal>-rpath</literal> or setting <makevar>LD_RUN_PATH</makevar>
+	  during linking (see <literal>lang/moscow_ml</literal> for an example),
+	  or through a shell-wrapper which sets <makevar>LD_LIBRARY_PATH</makevar>
+	  before invoking the binary, like <literal>www/mozilla</literal> does.</para>
+
 	<para>Note that content of <makevar>LDCONFIG_DIRS</makevar> is passed
 	  through &man.sed.1; just like the rest of <filename>pkg-plist</filename>,
 	  so <makevar>PLIST_SUB</makevar> substitutions also apply here.  It is
--- shlibs.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-doc mailing list