On Sat, Jun 29, 2013, at 10:33 AM, Kirk Terrell wrote: > While trying to build a system using the latest version of the embedded > GIT I ran into an issue at the beginning with the GMP build - I'ver > tried twice. One time GMP compiled at the problem didn't manifest until > gcc-static, where the it would build with the 64bit versions of GMP, MPC > and MPFR. Based on some of the research i did it looks like GMP does a > poor job of guessing processor, which leads to the wrong ABI. I don't > know what i did different but the build failed, the following is a > partial listing of the output: > > > checking build system type... atom-pc-linux-gnu > checking host system type... atom-pc-linux-gnu
Is 'atom-pc-linux-gnu' a valid triplet? If nothing else, I would think an embedded book build should be using '-uclibc' as the ending portion of the triplet. Unless I'm misunderstanding something. If you are using 'atom-pc-linux-gnu', can you reproduce the issue using a triplet of 'i686-pc-linux-uclibc' and report back? > checking for a BSD-compatible install... /usr/bin/install -c > checking whether build environment is sane... yes > checking for a thread-safe mkdir -p... /bin/mkdir -p > checking for gawk... gawk > checking whether make sets $(MAKE)... yes > checking whether to enable maintainer-specific portions of Makefiles... > no > checking ABI=64 > checking compiler gcc -O2 -pedantic -fomit-frame-pointer -m64 > -fexceptions... yes > checking compiler gcc -O2 -pedantic -fomit-frame-pointer -m64 > -fexceptions -mtune=atom... yes > checking compiler gcc -O2 -pedantic -fomit-frame-pointer -m64 > -mtune=atom -fexceptions -march=atom... yes > checking for gcc... gcc > ------------------------- > ------------------------- > ../fib_table.h:4:1: warning: data definition has no type or storage > class [enabled by default] > ../fib_table.h:4:1: warning: type defaults to 'int' in declaration of > 'Error' [enabled by default] > ../fib_table.h:4:8: warning: type defaults to 'int' in declaration of > 'error' [enabled by default] > ../fib_table.h:4:20: error: expected '=', ',', ';', 'asm' or > '__attribute__' before 'data' > make[4]: *** [amd64check.lo] Error 1 > make[4]: Leaving directory > `/opt/elfs20130613B.arm.little/sources/gmp-5.1.2/tests' > make[3]: *** [check-am] Error 2 > make[3]: Leaving directory > `/opt/elfs20130613B.arm.little/sources/gmp-5.1.2/tests' > make[2]: *** [check-recursive] Error 1 > make[2]: Leaving directory > `/opt/elfs20130613B.arm.little/sources/gmp-5.1.2/tests' > make[1]: *** [check-recursive] Error 1 > make[1]: Leaving directory > `/opt/elfs20130613B.arm.little/sources/gmp-5.1.2' > make: *** [check] Error 2 > ------------------------------ > ---------------------------- > /usr/bin/ld: i386 architecture of input file `rand/.libs/randbui.o' is > incompatible with i386:x86-64 output > /usr/bin/ld: i386 architecture of input file `rand/.libs/randmui.o' is > incompatible with i386:x86-64 output > mpn/.libs/toom_interpolate_6pts.o: In function > `__gmpn_toom_interpolate_6pts': > toom_interpolate_6pts.c:(.text+0x2bc): undefined reference to > `__gmpn_sublsh2_n_ip1' > mpn/.libs/toom_interpolate_8pts.o: In function > `__gmpn_toom_interpolate_8pts': > toom_interpolate_8pts.c:(.text+0x3ca): undefined reference to > `__gmpn_sublsh2_n_ip1' > collect2: ld returned 1 exit status > make[2]: *** [libgmp.la] Error 1 > make[2]: Leaving directory > `/opt/elfs20130613B.arm.little/sources/gmp-5.1.2' > make[1]: *** [install-recursive] Error 1 > make[1]: Leaving directory > `/opt/elfs20130613B.arm.little/sources/gmp-5.1.2' > make: *** [install] Error 2 > exitCode=2 > > > --------------------------- > > Some references that might be useful: > > http://gmplib.org/manual/Build-Options.html > > http://lists.gnu.org/archive/html/bug-standards/2012-01/msg00001.html > > http://lists.cross-lfs.org/htdig.cgi/clfs-support-cross-lfs.org/2009-September/000746.html > > -------------------- > > i've built succesfully by seting ABI=32, not sure if this is the best > solution. Based on [1] it seems it is. And, somewhat good timing to catch this, as armv8 is 64 bit now and we'll start seeing those real systems out there, too :) [1]:http://gmplib.org/manual/ABI-and-ISA.html#ABI-and-ISA I've opened a bug [2] for this. [2]:http://trac.cross-lfs.org/ticket/925 Thanks, Andrew _______________________________________________ Clfs-support mailing list [email protected] http://lists.cross-lfs.org/listinfo.cgi/clfs-support-cross-lfs.org
