Re: Shared object "libsodium.so.13" not found, required by "dnscrypt-proxy"

From: Kevin Oberman <rkoberman_at_gmail.com>
Date: Tue, 24 Feb 2015 15:11:39 -0800
On Tue, Feb 24, 2015 at 10:53 AM, Miguel Clara <miguelmclara_at_gmail.com>
wrote:

> On Tue, Feb 24, 2015 at 6:13 PM, Garrett Cooper <yaneurabeya_at_gmail.com>
> wrote:
>
> > On Feb 24, 2015, at 6:35, Miguel Clara <miguelmclara_at_gmail.com> wrote:
> >
> > > ]# rcorder /etc/rc.d/* /usr/local/etc/rc.d/* >/dev/null
> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
> > `kerberos'
> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
> > `named'
> > > rcorder: file `/usr/local/etc/rc.d/dnscrypt-proxy' is before unknown
> > provision `unbound'
> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/webcamd'.
> > > rcorder: Circular dependency on provision `dbus' in file
> > `/usr/local/etc/rc.d/webcamd'.
> > > rcorder: Circular dependency on provision `ldconfig' in file
> > `/usr/local/etc/rc.d/dnscrypt-proxy'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/devfs'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/mdconfig2'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/newsyslog'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/syslogd'.
> > > rcorder: Circular dependency on provision `NETWORKING' in file
> > `/etc/rc.d/kdc'.
> > > rcorder: Circular dependency on provision `ldconfig' in file
> > `/etc/rc.d/SERVERS'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/archdep'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/SERVERS'.
> > > rcorder: requirement `tpmd' in file `/usr/local/etc/rc.d/tcsd' has no
> > providers.
> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/uuidd'.
> > > rcorder: requirement `usbd' in file `/usr/local/etc/rc.d/hald' has no
> > providers.
> > >
> > > # rcorder /etc/rc.d/* /usr/local/etc/rc.d/* | awk
> > ‘/SERVERS|cleanvar|ldconfig|dbus/ { print NR, $0 }’
> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
> > `kerberos'
> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
> > `named'
> > > rcorder: file `/usr/local/etc/rc.d/dnscrypt-proxy' is before unknown
> > provision `unbound'
> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/webcamd'.
> > > rcorder: Circular dependency on provision `dbus' in file
> > `/usr/local/etc/rc.d/webcamd'.
> > > rcorder: Circular dependency on provision `ldconfig' in file
> > `/usr/local/etc/rc.d/dnscrypt-proxy'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/devfs'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/mdconfig2'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/newsyslog'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/syslogd'.
> > > rcorder: Circular dependency on provision `NETWORKING' in file
> > `/etc/rc.d/kdc'.
> > > rcorder: Circular dependency on provision `ldconfig' in file
> > `/etc/rc.d/SERVERS'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/archdep'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> > `/etc/rc.d/SERVERS'.
> > > rcorder: requirement `tpmd' in file `/usr/local/etc/rc.d/tcsd' has no
> > providers.
> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/uuidd'.
> > > rcorder: requirement `usbd' in file `/usr/local/etc/rc.d/hald' has no
> > providers.
> > > cleanvar: Command not found.
> > > dbus/: Command not found.
> > >
> > > Note that this is still with the change to dnscrypt-ptoxy REQUIRE
> > (adding ldconfig)
> >
> > Your rcorder is 50 shades of broken :(. Please remove all local
> > modifications to scripts, then repost the output of the rcorder commands
> > again. I suspect what’s going wrong is the result of some of my changes
> to
> > remove etc/rc.d based on build knobs…
> > Cheers,
> >
>
> So much like the movies them... damn.... :X
>
> I don't recall any changes to the rc.d scripts except the one to
> dnscrypt-proxy (adding the ldconfig REQUIRE)
>
> I also don't really know what to make of the output... expect this part:
>
> "Circular dependency on provision", but the man says:
> A set of files has a circular dependency which was detected while
> processing the stated condition.
>
> So it should mean that 'A' requires 'B' but 'B' requires 'A'... but this
> does not seem to be the case...
>
> I guess I'll have to go one by one and see if I can identify issue. But
> first I'll make sure the ports that use those rc.d scripts are up to date.
>

Just to save a bit of time, many RC scripts are messed up at install time.

One of the worst I have is for security/trousers-tddl. It is a mess. It
wants kerberos and named, but most FreeBSD systems no longer run named or
kerberos. As far as I can tell, no FreeBSD port provides a tpmd, so I have
no idea where the heck that comes from.

hald wants usbd which has been obsolete for some years. Certainly no
providers any longer. I don't think that any supported version of FreeBSD
still has usbd, so any port requiring it should be fixed.

Also, webcamd and dbus have a circular dependency. It really needs to be
fixed some time, but does not break anything.

I suspect that whatever is causing the multiple circular dependencies on
mountcritremote might be tied to the issue. I don't see the obvious problem
here and I don't have it. Circular dependencies are a real pain to track
down as they are often not direct. A required E and G and B requires A. But
the rcorder only knows that. It does not report that E does require B and
just reports that A is a circular dependency. (I hope that makes some
sense.)

Normally mountcritremote should be very soon after NETWORKING...usually
after NETWORKING and netwait. This means it should run right after the
network starts and before anything that depends on the network.
rcorder /etc/rc.d/* /usr/local/etc/rc.d/* | less should show this with
ldconfig right after mountcritremote. There is no reason that devfs,
syslogd or any of the others listed should precede mountcritremote! The
errors indicate that SOMETHING before NETWORKING and netwait is causing all
of these other things to run and, BOOM, your script is firing off before
ldconfig is run.

Good luck! It will likely be tedious, but looking at the output of rcorder
should point the finger in at least the right direction. Hete is an exerpt
from mine in the area where these things belong:
/etc/rc.d/NETWORKING
/etc/rc.d/netwait
/etc/rc.d/mountcritremote
/etc/rc.d/ldconfig
/etc/rc.d/accounting
/etc/rc.d/newsyslog
/etc/rc.d/syslogd
/etc/rc.d/ntpdate
/etc/rc.d/rpcbind
/etc/rc.d/nfsclient
/etc/rc.d/devfs
/etc/rc.d/ipmon
/etc/rc.d/mdconfig2
/etc/rc.d/kdc
-- 
Kevin Oberman, Network Engineer, Retired
E-mail: rkoberman_at_gmail.com
Received on Tue Feb 24 2015 - 22:11:41 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:55 UTC