Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Jan 2012 20:09:28 -0600
From:      "Matthew D. Fuller" <fullermd@over-yonder.net>
To:        Kevin Oberman <kob6558@gmail.com>
Cc:        ports@freebsd.org
Subject:   Re: Upgrading libs with many dependent ports
Message-ID:  <20120118020928.GE509@over-yonder.net>
In-Reply-To: <CAN6yY1t7xAdWvGQvDQMksfSA2E6wdFryd0BUFKzNGvqUOhWZsg@mail.gmail.com>
References:  <CAN6yY1t7xAdWvGQvDQMksfSA2E6wdFryd0BUFKzNGvqUOhWZsg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--i9LlY+UWpKt15+FH
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Tue, Jan 17, 2012 at 05:51:11PM -0800 I heard the voice of
Kevin Oberman, and lo! it spake thus:
> 
> The manual method would be to install sysutils/bsdadminscripts and
> use a command like `pkg_libchk | grep -E "xcb-.+.so" | sort >
> tmpfile` to provide a list of ports that actually are linked to the
> libraries in question.

FWIW, I some years ago wrote up a quick&dirty perl script to find
missing or out of date libs.  It pulls out and warns about missing
libs, stuff in compat/pkg (held over after upgrade by
portupgrade/portmaster), and stuff in the base /usr/lib/compat (handy
when crossing major versions, and potentially other big upheavals).
It's only about a k; I'll attach it.

I pretty much wind up ldd'ing /usr/local/{bin/*,sbin/*,lib/*.so*} and
running the results through the script.  Usually something like `cd
/usr/local/bin ; ldd * > /tmp/ldd.bin ; lddchk.pl < /tmp/ldd.bin`.
That tells me the files; then I can use my brain or pkg_which to tell
me which packages are involved.  I'm happy with that level of
automation, because I like keeping my brain firmly in the loop on such
things, but it wouldn't be too hard to extend it to do its own walks
over the filesystem, etc.


-- 
Matthew Fuller     (MF4839)   |  fullermd@over-yonder.net
Systems/Network Administrator |  http://www.over-yonder.net/~fullermd/
           On the Internet, nobody can hear you scream.

--i9LlY+UWpKt15+FH--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120118020928.GE509>