Configure fails when building gcc-4.7.2 for avr: configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+. Reproducible: Always Steps to Reproduce: 1.run command "crossdev -t avr" 2. 3.
Created attachment 334100 [details] emerge --info
Created attachment 334102 [details] cross-avr-info.log
Created attachment 334104 [details] cross-avr-gcc-stage1.log.xz
Created attachment 334106 [details] gcc-config.logs.tar.xz
/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/../../../../x86_64-pc-linux-gnu/bin/ld: __gmpfr_cache_const_pi: TLS definition in /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/../../../../lib64/libmpfr.so section .tdata mismatches non-TLS definition in /usr/lib64/libmpfr.so.1 section .data
Interesting! /usr/lib64 contains (from a newly re-emerged mpfr): 16 Jan 2 23:11 libmpfr.so -> libmpfr.so.4.1.1 323648 Jan 2 23:11 libmpfr.so.1 16 Jan 2 23:11 libmpfr.so.4 -> libmpfr.so.4.1.1 381032 Jan 2 23:10 libmpfr.so.4.1.1 All of the ebuilds for mpfr contain: pkg_preinst() { preserve_old_lib /usr/$(get_libdir)/libmpfr.so.1 } pkg_postinst() { preserve_old_lib_notify /usr/$(get_libdir)/libmpfr.so.1 } Evidently gcc requires libmpfr.so.4 and won't build with libmpfr.so.1. How does one satisfy configure??? Thank you.
Noticing that libmpc had a much older date than libmpfr, I emerged both libmpc and libmpfr. With the new libraries, gcc-4.7.2 builds successfully. It seems that building this cross compiler is more difficult than it ought to be. Unfortunately I can't offer any suggestions on simplifying the process :-<
run revdep-rebuild and rebuild everything that is linked against the old mpfr