gcc 4.7.2 fails to build shared library with coverage enabled on x86-64

Bug #1119932 reported by michael pruett
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gcc-4.7 (Ubuntu)
New
Undecided
Unassigned

Bug Description

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

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.