Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 Feb 2019 21:56:55 -0800
From:      Steve Kargl <sgk@troutmask.apl.washington.edu>
To:        Eugene Grosbein <eugen@grosbein.net>
Cc:        "Russell L. Carter" <rcarter@pinyon.org>, FreeBSD Ports ML <freebsd-ports@freebsd.org>
Subject:   Re: FreeCAD 0.17 && /lib//libgcc_s.so.1
Message-ID:  <20190217055655.GA91549@troutmask.apl.washington.edu>
In-Reply-To: <692e3772-9b06-03fa-790b-73117f3c6ec8@grosbein.net>
References:  <a2102b4e-7d7a-7d5b-2ba1-b9a14f8574f6@pinyon.org> <f6a45ec9-7ae4-d9ba-f71c-f2ef8c235039@grosbein.net> <20190217051109.GA91424@troutmask.apl.washington.edu> <692e3772-9b06-03fa-790b-73117f3c6ec8@grosbein.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Feb 17, 2019 at 12:37:36PM +0700, Eugene Grosbein wrote:
> 17.02.2019 12:11, Steve Kargl wrot:
> 
> > 
> > There is a problem with the order of libgcc_s.so.1
> > in the cache created by ldconfig.  rtld will use
> > the first one it finds.  If it fails, it fails.  It
> > does not look to see if there is a second entry.
> 
> If binary needs specific version of libgcc_s.so.1 installed
> with gcc8 port/package, then building system must use specific
> rpath, so rtld would not use "the first one it finds".

This is a well-known problem with libgcc_s.so.1 and gfortran.
You can state whatever you believe should happen, but it does
not seem to work that.  You have a few options:
1) Add -static to your options;
2) Use LD_LIBRARY_PATH, LD_RUN_PATH to point to
   /usr/local/lib/gcc8;
3) Add -Wl,-rpath=/usr/local/lib/gcc8 to FFLAGS in /etc/make.conf
   (check syntax for this one);
4) bump the major library version number for /lib/libgcc.so.1
   to 2;
5) fix rtld to not fail on the first found library in the cache.
   Iterated over all entries and only fail if the library isn't found;
6) rename /lib/libgcc_s.so.1 to /lib/libllvm_s.so.1 and teach
   llvm/clang/rtld to not misappropriate a well-known GCC library
   name.

-- 
Steve



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