On 29 May 2016, at 04:27, Steve Kargl <sgk_at_troutmask.apl.washington.edu> wrote: > > I have a Fortran application that has built forever on FreeBSD-current; > that is, until recently. It now dies with the following error: > > gfortran48 -O2 -pipe -march=native -mtune=native -static -funroll-loops \ > --param max-unroll-times=4 -ftree-vectorize -Wall\ > -rpath /usr/local/lib/gcc48 -I/home/kargl/modules -o acolor acolor.f90 \ > globalm.o saxm.o -L/home/kargl/lib -L. -L/usr/local/lib -L. -ltgt -loa \ > -L/home/kargl/lib -L. -L/usr/local/lib -lm90 -llapack -lblas > ./liboa.a(pointm.o): In function `__pointm_MOD_l2norm2': > pointm.f90:(.text+0x490): multiple definition of `__pointm_MOD_l2norm2' > /home/kargl/lib/libtgt.a(pointm.o):pointm.f90:(.text+0x0): first defined here > > Yes, pointm.o is in both libtgt.a and liboa.a. In the past, during > linking, the symbols are resolved from the first of -ltgt or -loa > depending on the order on the command line. If you run the above command line with -v, what linker does it use? I suspect this may be something caused by a newer binutils port, or even by a newer gfortran. If this is using /usr/local/bin/ld, you might want to try downgrading your binutils. -Dimitry
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:05 UTC