Building audiofile 0.3.5 with code coverage enabled works with gcc 4.6.3 but fails with gcc 4.7.2 on Ubuntu 12.10 for x86-64. Building on Ubuntu 12.10 for i386 works fine with either gcc 4.6.3 or gcc 4.7.2.
To reproduce this problem, follow these steps:
% curl -O http://audiofile.68k.org/audiofile-0.3.5.tar.gz
% tar xvfz audiofile-0.3.5.tar.gz
% cd audiofile-0.3.5
% ./configure --enable-coverage
% make
[...]
libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.7/crtbeginS.o .libs/AIFF.o .libs/AVR.o .libs/AudioFormat.o .libs/CAF.o .libs/File.o .libs/FileHandle.o .libs/IFF.o .libs/IRCAM.o .libs/Instrument.o .libs/Loop.o .libs/Marker.o .libs/Miscellaneous.o .libs/NIST.o .libs/NeXT.o .libs/Raw.o .libs/SampleVision.o .libs/Setup.o .libs/Track.o .libs/UUID.o .libs/VOC.o .libs/WAVE.o .libs/aes.o .libs/af_vfs.o .libs/aupv.o .libs/compression.o .libs/data.o .libs/debug.o .libs/error.o .libs/extended.o .libs/format.o .libs/g711.o .libs/openclose.o .libs/pcm.o .libs/query.o .libs/units.o .libs/util.o -Wl,--whole-archive modules/.libs/libmodules.a -Wl,--no-whole-archive -lgcov -L/usr/lib/gcc/x86_64-linux-gnu/4.7 -L/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.7/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.7/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../x86_64-linux-gnu/crtn.o -fprofile-arcs -O2 -Wl,-soname -Wl,libaudiofile.so.1 -Wl,-retain-symbols-file -Wl,./audiofile.exports -o .libs/libaudiofile.so.1.0.0
.libs/util.o: In function `_af_filesetup_ok(_AFfilesetup*)':
/home/michael/Downloads/audiofile-0.3.5/libaudiofile/util.cpp:58:(.text+0xc): relocation truncated to fit: R_X86_64_PC32 against `.bss'
/home/michael/Downloads/audiofile-0.3.5/libaudiofile/util.cpp:65:(.text+0x2f): relocation truncated to fit: R_X86_64_PC32 against `.bss'
[...]
/home/michael/Downloads/audiofile-0.3.5/libaudiofile/util.cpp:90:(.text+0x119): additional relocation overflows omitted from the output
collect2: error: ld returned 1 exit status
make[3]: *** [libaudiofile.la] Error 1
make[3]: Leaving directory `/home/michael/Downloads/audiofile-0.3.5/libaudiofile'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/michael/Downloads/audiofile-0.3.5/libaudiofile'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/michael/Downloads/audiofile-0.3.5'
make: *** [all] Error 2
Building with GCC 4.6.3 on the same system works fine:
% CC=gcc-4.6 CXX=g++-4.6 ./configure --enable-coverage
% make
% gcc-4.7 -v
Using built-in specs.
COLLECT_GCC=gcc-4.7
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.7/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.7.2-2ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.7/README.Bugs --enable-languages=c,c++,go,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.7 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.7 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.7.2 (Ubuntu/Linaro 4.7.2-2ubuntu1)
% gcc-4.6 -v
Using built-in specs.
COLLECT_GCC=gcc-4.6
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.6/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.3-10ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.6.3 20120918 (prerelease) (Ubuntu/Linaro 4.6.3-10ubuntu1)
% ld -v
GNU ld (GNU Binutils for Ubuntu) 2.22.90.20120924