Problems with out libgcc_s.so in base

Steve Kargl sgk at troutmask.apl.washington.edu
Wed Aug 17 21:17:14 UTC 2016


On Sun, Aug 14, 2016 at 07:34:30PM -0400, Diane Bruce wrote:
> On Sun, Aug 14, 2016 at 04:03:51PM -0700, Steve Kargl wrote:
> > 
> > Freebsd-ports could also use a wrapper:
> > % cat ~/bin/gfc7
> > #! /bin/sh
> > DIR=`id -P sgk | sed 's/\:/\ /g' | awk '{print $9}'`
> > export DIR
> > 
> > LD_LIBRARY_PATH=$DIR/work/7/lib
> > export LD_LIBRARY_PATH
> > 
> > LD_RUN_PATH=$DIR/work/7/lib
> > export LD_RUN_PATH
> > 
> > $DIR/work/7/bin/gfortran -fno-backtrace $@
> 
> Yes. I have also suggested we use a wrapper to the ports guys.
> 

I thought about this a bit, and cleaner solution might be
to add the program suffix to libgcc_s.so.1.  For example,

% cat foo.f90
program foo
   print *, 'Hello'
end program
% gfortran6 -o z foo.f90 && ./z
/lib/libgcc_s.so.1: version GCC_4.6.0 required by \
/usr/local/lib/gcc6/libgfortran.so.3 not found
% ldconfig -r | grep libgcc
        6:-lgcc_s.1 => /lib/libgcc_s.so.1
        735:-lgcc_s.1 => /usr/local/lib/gcc6/libgcc_s.so.1

Clearly, ldd is looking for 735 but finds 6.  If the lang/gcc6 could
be convinced to build, install, and use libgcc_s6.so.1, then the
problem is solved without a wrapper.

-- 
Steve


More information about the freebsd-toolchain mailing list