Library Problem

Doug Hardie bc979 at lafn.org
Thu Nov 29 21:33:58 UTC 2012


On 29 November 2012, at 06:01, Gary Palmer wrote:

> On Wed, Nov 28, 2012 at 10:46:51PM -0800, Doug Hardie wrote:
>> 
>> On 28 November 2012, at 20:01, Devin Teske wrote:
>> 
>>> 
>>> On Nov 28, 2012, at 7:36 PM, Doug Hardie wrote:
>>> 
>>>> I have installed 4 systems from the same FreeBSD 9.1-RC3 disk.  Three of them worked just fine.  The last one is causing a problem.  It will not look in /usr/local/lib/ for shared libraries.  I did the standard install, moved in some source, compiled it and tried to run it.  The library is there.  On the working systems ktrace shows:
>>>> 
>>>> 2259 intro    CALL  access(0x28066000,0<F_OK>)
>>>> 2259 intro    NAMI  "/lib/libsermons.so"
>>>> 2259 intro    RET   access -1 errno 2 No such file or directory
>>>> 2259 intro    CALL  access(0x28066000,0<F_OK>)
>>>> 2259 intro    NAMI  "/usr/lib/libsermons.so"
>>>> 2259 intro    RET   access -1 errno 2 No such file or directory
>>>> 2259 intro    CALL  access(0x28066000,0<F_OK>)
>>>> 2259 intro    NAMI  "/usr/lib/compat/libsermons.so"
>>>> 2259 intro    RET   access -1 errno 2 No such file or directory
>>>> 2259 intro    CALL  access(0x28066000,0<F_OK>)
>>>> 2259 intro    NAMI  "/usr/local/lib/libsermons.so"
>>>> 2259 intro    RET   access 0
>>>> 
>>>> 
>>>> On the failing system ktrace shows:
>>>> 
>>>> 6746 intro    NAMI  "/lib/libsermons.so"
>>>> 6746 intro    RET   access -1 errno 2 No such file or directory
>>>> 6746 intro    CALL  access(0x28066000,0<F_OK>)
>>>> 6746 intro    NAMI  "/usr/lib/libsermons.so"
>>>> 6746 intro    RET   access -1 errno 2 No such file or directory
>>>> 6746 intro    CALL  access(0x28066000,0<F_OK>)
>>>> 6746 intro    NAMI  "/usr/lib/compat/libsermons.so"
>>>> 6746 intro    RET   access -1 errno 2 No such file or directory
>>>> 6746 intro    CALL  access(0x28066000,0<F_OK>)
>>>> 6746 intro    NAMI  "/lib/libsermons.so"
>>>> 6746 intro    RET   access -1 errno 2 No such file or directory
>>>> 6746 intro    CALL  access(0x28066000,0<F_OK>)
>>>> 6746 intro    NAMI  "/usr/lib/libsermons.so"
>>>> 6746 intro    RET   access -1 errno 2 No such file or directory
>>>> 6746 intro    CALL  write(0x2,0x28060080,0x3c)
>>>> 6746 intro    GIO   fd 2 wrote 60 bytes
>>>>     "Shared object "libsermons.so" not found, required by "intro""
>>>> 
>>>> 
>>>> It never attempts to check /usr/local/lib.  I can't find any configuration item that affects that.  How can this be fixed?
>>>> 
>>> 
>>> What's the value of "ldconfig_paths" in rc.conf(5)?
>>> 
>>> That includes:
>>> /etc/rc.conf
>>> /etc/rc.conf.local (if it exists)
>>> /etc/defaults/rc.conf
>>> 
>>> Here on my 9.0-R system it has the following in /etc/defaults/rc.conf:
>>> /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg
>> 
>> 
>> /etc/defaults/rc.conf has:
>> 
>> ldconfig_paths="/usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg"
>> 
>> 
>> /etc/rc.conf has nothing for ldconfig_paths.
> 
> Check that /usr/local/lib doesn't have group or other write perms.
> ldconfig ignores directories that are group/world writable.
> 
> To fix:
> 
> chmod go-w /usr/local/lib
> sh /etc/rc.d/ldconfig start

sermons# ll -d /usr/local/lib
drwxr-xr-x  4 root  wheel  512 Nov 28 19:07 /usr/local/lib


I think I found the cause of the problem.  A reboot corrected the issue.  Apparently when ldconfig was run /usr/local/lib didn't exist.  Apparently it doesn't check for that except for in ldconfig.  I was not aware of ldconfig before.  That explains why the reboot worked.  Thanks to all who provided information.



More information about the freebsd-stable mailing list