From owner-freebsd-ports@freebsd.org Sat Aug 20 05:34:53 2016 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2F336BC0051 for ; Sat, 20 Aug 2016 05:34:53 +0000 (UTC) (envelope-from FreeBSD@shaneware.biz) Received: from ipmail07.adl2.internode.on.net (ipmail07.adl2.internode.on.net [150.101.137.131]) by mx1.freebsd.org (Postfix) with ESMTP id B4AB91F8D for ; Sat, 20 Aug 2016 05:34:52 +0000 (UTC) (envelope-from FreeBSD@shaneware.biz) Received: from ppp14-2-4-72.lns21.adl2.internode.on.net (HELO leader.local) ([14.2.4.72]) by ipmail07.adl2.internode.on.net with ESMTP; 20 Aug 2016 15:04:46 +0930 Subject: Re: Problems with out libgcc_s.so in base References: <20160814230351.GA10587@troutmask.apl.washington.edu> <20160814233430.GA35872@night.db.net> <20160817211710.GA59205@troutmask.apl.washington.edu> <20160818111521.7f79b9f8@kalimero.tijl.coosemans.org> <20160819011432.6f2eadbd@kalimero.tijl.coosemans.org> <20160819004304.GA94021@troutmask.apl.washington.edu> To: freebsd-ports@freebsd.org From: Shane Ambler Message-ID: <9663a390-080e-462d-84d7-2a27987b83e5@ShaneWare.Biz> Date: Sat, 20 Aug 2016 15:04:44 +0930 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: <20160819004304.GA94021@troutmask.apl.washington.edu> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 20 Aug 2016 05:34:53 -0000 On 19/08/2016 10:13, Steven G. Kargl wrote: > On Fri, Aug 19, 2016 at 01:14:32AM +0200, Tijl Coosemans wrote: >> On Thu, 18 Aug 2016 14:48:28 +0200 Dimitry Andric wrote: >> >>> how would you solve the problem of having >>> multiple, possibly incompatible versions of the same library in >>> different directories? >>> >>> For example, on one of my systems, I now have these: >>> >>> /usr/local/lib/gcc47/libgcc_s.so.1 >>> /usr/local/lib/gcc48/libgcc_s.so.1 >>> /usr/local/lib/gcc49/libgcc_s.so.1 >>> /usr/local/lib/gcc5/libgcc_s.so.1 >>> /usr/local/lib/gcc6/libgcc_s.so.1 >>> /usr/local/lib/gcc7/libgcc_s.so.1 >>> >>> So which one are you going to put at the front of the path? The gcc7 >>> version? If you are lucky that one is backwards compatible with all the >>> previous ones, You should find that all newer copies of libgcc_s contain compatibility support for binaries that were linked to earlier versions. For the gcc policy on library ABI compatibility read - http://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html You can find the ABI versions contained in each library - % strings /usr/lib/libgcc_s.so | grep 'GCC_[0-9]' | sort -u GCC_3.0 GCC_3.3 GCC_3.3.1 GCC_3.4 GCC_3.4.2 GCC_3.4.4 GCC_4.0.0 GCC_4.2.0 GCC_4.3.0 % strings /usr/local/lib/gcc48/libgcc_s.so.1 | grep 'GCC_[0-9]' | sort -u GCC_3.0 GCC_3.3 GCC_3.3.1 GCC_3.4 GCC_3.4.2 GCC_3.4.4 GCC_4.0.0 GCC_4.2.0 GCC_4.3.0 GCC_4.6.0 GCC_4.7.0 GCC_4.8.0 -- FreeBSD - the place to B...Software Developing Shane Ambler