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