https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61418
Bug ID: 61418 Summary: [4.9 Regression] HDF5 build failure with -flto: libgfortran.spec: attempt to rename spec 'lib' to already defined spec 'liborig' Product: gcc Version: 4.9.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: trippels at gcc dot gnu.org Building HDF5 with -flto fails: /bin/sh ../../libtool --tag=FC --mode=link x86_64-pc-linux-gnu-gfortran -I/var/tmp/portage/sci-libs/hdf5-1.8.13/work/hdf5-1.8.13/src -I/var/tmp/portage/sci-libs/hdf5-1.8.13/work/hdf5-1.8.13/fortran/src -O2 -pipe -version-info 8:2 :0 -Wl,--hash-style=gnu,--as-needed,--gc-sections,--icf=all,--icf-iterations=3 -o libhdf5_fortran.la -rpath /usr/lib64 H5f90global.lo H5fortran_types.lo H5_ff_F90.lo H5_ff.lo H5Aff.lo H5Dff.lo H5Eff.lo H5Fff.lo H5Gff.lo H5Iff.lo H5Lff.lo H5Off.lo H5Pff.lo H5Rff.lo H5Sff.lo H5Tff.lo H5Zff.lo H5_DBLE_InterfaceInclude.lo H5f90kit.lo H5_f.lo H5Af.lo H5Df.lo H5Ef.lo H5Ff.lo H5Gf.lo H5If.lo H5Lf.lo H5Of.lo H5Pf.lo H5Rf.lo H5Sf.lo H5Tf.lo H5Zf.lo H5Aff_F90.lo H5Dff_F90.lo H5Eff_F90.lo H5Fff_F90.lo H5Lff_F90.lo H5Off_F90.lo H5Pff_F90.lo H5Rff_F90.lo H5Tff_F90.lo HDF5.lo ../../src/libhdf5.la -lz -ldl -lm libtool: link: x86_64-pc-linux-gnu-gfortran -shared -fPIC .libs/H5f90global.o .libs/H5fortran_types.o .libs/H5_ff_F90.o .libs/H5_ff.o .libs/H5Aff.o .libs/H5Dff.o .libs/H5Eff.o .libs/H5Fff.o .libs/H5Gff.o .libs/H5Iff.o .libs/H5Lff.o .libs/H5Off.o .libs/H5Pff.o .libs/H5Rff.o .libs/H5Sff.o .libs/H5Tff.o .libs/H5Zff.o .libs/H5_DBLE_InterfaceInclude.o .libs/H5f90kit.o .libs/H5_f.o .libs/H5Af.o .libs/H5Df.o .libs/H5Ef.o .libs/H5Ff.o .libs/H5Gf.o .libs/H5If.o .libs/H5Lf.o .libs/H5Of.o .libs/H5Pf.o .libs/H5Rf.o .libs/H5Sf.o .libs/H5Tf.o .libs/H5Zf.o .libs/H5Aff_F90.o .libs/H5Dff_F90.o .libs/H5Eff_F90.o .libs/H5Fff_F90.o .libs/H5Lff_F90.o .libs/H5Off_F90.o .libs/H5Pff_F90.o .libs/H5Rff_F90.o .libs/H5Tff_F90.o .libs/HDF5.o ../../src/.libs/libhdf5.so -lz -ldl -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1/../../.. /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1/libgfortran.so /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1/libquadmath.so -lm -lc -lgcc_s -O2 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,--gc-sections -Wl,--icf=all -Wl,--icf-iterations=3 -Wl,-soname -Wl,libhdf5_fortran.so.8 -o .libs/libhdf5_fortran.so.8.0.2 x86_64-pc-linux-gnu-gfortran: fatal error: /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1/libgfortran.spec: attempt to rename spec 'lib' to already defined spec 'liborig' compilation terminated. lto-wrapper: /usr/x86_64-pc-linux-gnu/gcc-bin/4.9.1/x86_64-pc-linux-gnu-gfortran returned 1 exit status /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1/../../../../x86_64-pc-linux-gnu/bin/ld: fatal error: lto-wrapper failed Without -flto it builds just fine. 4.8.3 with -flto also works fine. To reproduce start with an empty test-file: markus@x4 /tmp % touch H5Zf.i markus@x4 /tmp % gcc -flto -c H5Zf.i markus@x4 /tmp % /usr/x86_64-pc-linux-gnu/gcc-bin/4.8.3/gfortran -shared -fPIC H5Zf.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1/../../.. markus@x4 /tmp % /usr/x86_64-pc-linux-gnu/gcc-bin/4.9.1/gfortran -shared -fPIC H5Zf.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1/../../.. gfortran: fatal error: /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1/../../../libgfortran.spec: attempt to rename spec ‘lib’ to already defined spec ‘liborig’ compilation terminated. lto-wrapper: /usr/x86_64-pc-linux-gnu/gcc-bin/4.9.1/gfortran returned 1 exit status /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.1/../../../../x86_64-pc-linux-gnu/bin/ld: fatal error: lto-wrapper failed collect2: error: ld returned 1 exit status