conf/91444: [PATCH] Fix compat?x library path of ldconfig_paths* in /etc/defaults/rc.conf

KIMURA Yasuhiro yasu at utahime.org
Sat Jan 7 04:20:13 PST 2006


The following reply was made to PR conf/91444; it has been noted by GNATS.

From: KIMURA Yasuhiro <yasu at utahime.org>
To: hrs at FreeBSD.org, FreeBSD-gnats-submit at FreeBSD.org
Cc:  
Subject: Re: conf/91444: [PATCH] Fix compat?x library path of
 ldconfig_paths* in /etc/defaults/rc.conf
Date: Sat, 07 Jan 2006 21:09:44 +0900 (JST)

 From: Hiroki Sato <hrs at FreeBSD.org>
 Subject: Re: conf/91444: [PATCH] Fix compat?x library path of ldconfig_paths* in /etc/defaults/rc.conf
 Date: Sat, 07 Jan 2006 16:18:55 +0900 (JST)
 
 >  IIRC each misc/compat?x already has a startup script to invoke
 >  ldconfig for ${PREFIX}/lib/compat, and especially compat5x
 >  needs a hack for the 32-bit libraries on FreeBSD/amd64.
 
 Following is my actual experience when I upgraded my home server from
 4.11R/i386 to 6.0R/i386 recently. 
 
 On 4.11R I used some commercial softwares which worked as daemon
 process. I wanted to use them after upgrade, but unfortunately
 binaries for 6.x are not provided.
 
 So I installed misc/compat4x package from port. According to the
 messages of install time, I added "compat4x_enable=YES" to
 /etc/rc.conf and executed startup script of compat4x. Then I pkg_added
 the packages of the commercial softwares. When I executed startup
 scripts of them, programs were succssfully started up and worked as
 daemon process. Everything seemed to fine.
 
 But problem happened when I rebooted the system. On bootstrap stage,
 some programs of commercial softwares complained they cannot find
 shared libraries and did not startup. I investigated the problem and
 found It was caused by the name of startup script. That is, startup
 script of the commercial software in question is installed in
 /usr/local/etc/rc.d and the file name begin with 'a'. so it was
 invoked prior to the startup script of compat4x at boot time.
 
 After some trials and errors, I solved this problem by adding
 following 2 lines in /etc/rc.conf:
 
 ldconfig_paths="/usr/local/lib/compat /usr/X11R6/lib /usr/local/lib /usr/local/lib/compat/pkg"
 ldconfig_paths_aout="/usr/local/lib/compat/aout /usr/X11R6/lib/aout /usr/local/lib/aout"
 
 and then I thought these value should be set properly in
 /etc/default/rc.conf and sent this PR.
 
 I admit this patch is not perfect solution for the ldconfig issue of
 compat libraries. But surely there is the case that problem concerning
 with compat library is solved by applying it.
 
 And I would like to point out one more.
 
 >  So I do not think simply adding an absolute directory
 >  /usr/local/lib/compat into the default rc.conf is useful.
 
 This patch does not add new directory entry. It only changes already
 existing directory(/usr/lib/compat) entry to the more proper one.


More information about the freebsd-bugs mailing list