From owner-freebsd-current@FreeBSD.ORG Fri Jul 22 20:15:08 2005 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D231E16A41F for ; Fri, 22 Jul 2005 20:15:08 +0000 (GMT) (envelope-from rmtodd@ichotolot.servalan.com) Received: from mx2.synetsystems.com (mx2.synetsystems.com [216.226.140.79]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8CBE143D45 for ; Fri, 22 Jul 2005 20:15:08 +0000 (GMT) (envelope-from rmtodd@ichotolot.servalan.com) Received: by mx2.synetsystems.com (Postfix, from userid 66) id BF517237; Fri, 22 Jul 2005 16:15:06 -0400 (EDT) Received: from rmtodd by servalan.servalan.com with local (Exim 4.51 (FreeBSD)) id 1Dw3eI-000EMs-Lx for freebsd-current@freebsd.org; Fri, 22 Jul 2005 14:57:34 -0500 To: freebsd-current@freebsd.org References: <1121952594.68685.27.camel@opus.cse.buffalo.edu> <20050722174802.GS39292@obiwan.tataz.chchile.org> From: Richard Todd Date: Fri, 22 Jul 2005 14:57:34 -0500 In-Reply-To: (Jeremie Le Hen's message of "Fri, 22 Jul 2005 19:48:02 +0200") Message-ID: User-Agent: Gnus/5.1007 (Gnus v5.10.7) XEmacs/21.4.17 (Jumbo Shrimp, berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Subject: Re: HEADS-UP: New shared library versions coming soon X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Jul 2005 20:15:08 -0000 Jeremie Le Hen writes: > I know that FreeBSD is still lacking a solution to remove old > librairies, but I would like to know the actual recommended way > to remove old libraries. I'm not asking for a solution as NetBSD's > /etc/postinstall, just a simple and neat one. I can think of number > of such solutions, like searching for libraries dating before the > last world, parsing Makefiles from src/ to deduce which libs are > obsolete, ldd on each binary ... But I would like to hear what others > do to achieve this. In short, I'm looking for a neat solution. libchk (/usr/ports/sysutils/libchk) is a nice Python script that automates the "ldd on each binary" bit and gives you a list of .sos that aren't being used by anything. You do have to eyeball the list before doing a mass purge of any unreferenced .sos, as there are some apps (Mozilla/Firefox is one IIRC) which have .so files which are loaded by the program as needed but which don't show up as fixed dependencies via ldd. Still, the libchk list ought to at least give you a starting point.