From owner-freebsd-hackers@FreeBSD.ORG Thu Sep 18 22:55:20 2003 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6CE3116A4B3 for ; Thu, 18 Sep 2003 22:55:20 -0700 (PDT) Received: from dan.emsphone.com (dan.emsphone.com [199.67.51.101]) by mx1.FreeBSD.org (Postfix) with ESMTP id AB3FC43FE3 for ; Thu, 18 Sep 2003 22:55:19 -0700 (PDT) (envelope-from dan@dan.emsphone.com) Received: (from dan@localhost) by dan.emsphone.com (8.12.9/8.12.9) id h8J5tJg9080923 for FreeBSD-Hackers@FreeBSD.org; Fri, 19 Sep 2003 00:55:19 -0500 (CDT) (envelope-from dan) Date: Fri, 19 Sep 2003 00:55:19 -0500 From: Dan Nelson To: FreeBSD Hackers Message-ID: <20030919055519.GL51544@dan.emsphone.com> References: <20030919010534.GE1234@hal9000.halplant.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20030919010534.GE1234@hal9000.halplant.com> X-OS: FreeBSD 5.1-CURRENT X-message-flag: Outlook Error User-Agent: Mutt/1.5.4i Subject: Re: Relinking binaries to new .so libs when versions change? X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Sep 2003 05:55:20 -0000 In the last episode (Sep 18), Andrew J Caines said: > Again, a port update of a library has bumped a .so version [in this case > libatk-1.0.so.200 -> libatk-1.0.so.400]. This leaves a bunch of binaries > linked to the old .so which won't start. how did you update the port? Portupgrade moves old libraries into /usr/local/lib/compat/pkg so old programs can still link to them. Or you could run portupgrade -R, which will upgrade all the packages dependent on the one you list. > Is there an elegant and quick way to relink a given binary to a > different version of a particular .so, eg. "mvld foo foo.so.1 > foo.so.2"? Version numbers get bumped for a reason :) Running the wrong version library will usually result in a coredump or runtime linking error. -- Dan Nelson dnelson@allantgroup.com