Compiling libpng on a new 64-core POWER7 (ppc64) series server, I ran into this internal error during linkage: [sean@gcc1-power7 libpng]$ gcc -o ../../../lib/libpng15d.so.15.4.0 CMakeFiles/png15.dir/png.o CMakeFiles/png15.dir/pngerror.o CMakeFiles/png15.dir/pngget.o CMakeFiles/png15.dir/pngmem.o CMakeFiles/png15.dir/pngpread.o CMakeFiles/png15.dir/pngread.o CMakeFiles/png15.dir/pngrio.o CMakeFiles/png15.dir/pngrtran.o CMakeFiles/png15.dir/pngrutil.o CMakeFiles/png15.dir/pngset.o CMakeFiles/png15.dir/pngtrans.o CMakeFiles/png15.dir/pngwio.o CMakeFiles/png15.dir/pngwrite.o CMakeFiles/png15.dir/pngwtran.o CMakeFiles/png15.dir/pngwutil.o /usr/bin/ld: BFD version 2.21.53.0.1-3.fc16 20110716 internal error, aborting at merge.c line 877 in _bfd_merged_section_offset /usr/bin/ld: Please report this bug. collect2: ld returned 1 exit status With -shared, I get a "final link failed: Memory exhausted" exception. The server has 64GB of memory with ample unused (and libpng is relatively tiny, of course). Other apps/libs seem to compile/link just fine.
I couldn't reproduce this problem with libpng-1.5.7 using ld built from current binutils or fedora f16 source. That might be due to me using a different version of gcc or compiling a different version of libpng to yours. It might also be that this fedora bug is already fixed. Please check, and report fedora bug to https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora