tech-toolchain archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: './build.sh tools' failed on earm
On Jun 11, 2014, at 7:36 PM, KIYOHARA Takashi
<kiyohara%kk.iij4u.or.jp@localhost> wrote:
> Hi!
>
>
> On my earm machine, build.sh became an error and I am already in trouble
> for a long time.
> I understood this problem at last.
>
> ===> build.sh command: ./build.sh -O obj tools
> ===> build.sh started: Wed Jun 11 22:44:02 JST 2014
> ===> NetBSD version: 6.99.43
> ===> MACHINE: evbarm
> ===> MACHINE_ARCH: arm
> ===> Build platform: NetBSD 6.99.41 evbarm
> :
> <snip>
> :
> dependall-gcc ===> .
> dependall ===> gcc
> :
> <snip>
> :
> checking for the correct version of the gmp/mpfr/mpc libraries... no
> configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+.
> Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify
> their locations. Source code for these libraries can be found at
> their respective hosting sites as well as at
> ftp://gcc.gnu.org/pub/gcc/infrastructure/. See also
> http://gcc.gnu.org/install/prerequisites.html for additional info. If
> you obtained GMP, MPFR and/or MPC from a vendor distribution package,
> make sure that you have installed both the libraries and the header
> files. They may be located in separate packages.
> :
> <snip>
> :
>
>
> ----------------
>
> obj/tools/gcc/build/config.log:
> <snip>
> :
> configure:5650: cc -o conftest -O
> -I/usr/src/obj/tooldir.NetBSD-6.99.41-evbarm/include
> -I/usr/src/obj/tooldir.NetBSD-6.99.41-evbarm/include
> -I/usr/src/obj/tooldir.NetBSD-6.99.41-evbarm/include conftest.c
> -L/usr/src/obj/tooldir.NetBSD-6.99.41-evbarm/lib
> -L/usr/src/obj/tooldir.NetBSD-6.99.41-evbarm/lib
> -L/usr/src/obj/tooldir.NetBSD-6.99.41-evbarm/lib -lmpc -lmpfr -lgmp >&5
> /usr/src/obj/tooldir.NetBSD-6.99.41-evbarm/lib/libgmp.a(powm_ui.o): In
> function `__gmpz_powm_ui':
> powm_ui.c:(.text+0x4dc): undefined reference to `__gmpn_invert_limb'
> /usr/src/obj/tooldir.NetBSD-6.99.41-evbarm/lib/libgmp.a(divrem_1.o): In
> function `__gmpn_divrem_1':
> divrem_1.c:(.text+0xb8): undefined reference to `__gmpn_invert_limb'
> divrem_1.c:(.text+0x2c0): undefined reference to `__gmpn_invert_limb'
> /usr/src/obj/tooldir.NetBSD-6.99.41-evbarm/lib/libgmp.a(divrem_2.o): In
> function `__gmpn_divrem_2':
> divrem_2.c:(.text+0x6c): undefined reference to `__gmpn_invert_limb'
> /usr/src/obj/tooldir.NetBSD-6.99.41-evbarm/lib/libgmp.a(div_q.o): In function
> `__gmpn_div_q':
> div_q.c:(.text+0x1d4): undefined reference to `__gmpn_invert_limb'
> /usr/src/obj/tooldir.NetBSD-6.99.41-evbarm/lib/libgmp.a(div_q.o):div_q.c:(.text+0x540):
> more undefined references to `__gmpn_invert_limb' follow
> configure:5650: $? = 1
> configure: failed program was:
> | /* confdefs.h */
> | #define PACKAGE_NAME ""
> | #define PACKAGE_TARNAME ""
> | #define PACKAGE_VERSION ""
> | #define PACKAGE_STRING ""
> | #define PACKAGE_BUGREPORT ""
> | #define PACKAGE_URL ""
> | #define LT_OBJDIR ".libs/"
> | /* end confdefs.h. */
> | #include <mpc.h>
> | int
> | main ()
> | {
> |
> | mpfr_t n;
> | mpfr_t x;
> | mpc_t c;
> | int t;
> | mpfr_init (n);
> | mpfr_init (x);
> | mpfr_atan2 (n, n, x, GMP_RNDN);
> | mpfr_erfc (n, x, GMP_RNDN);
> | mpfr_subnormalize (x, t, GMP_RNDN);
> | mpfr_clear(n);
> | mpfr_clear(x);
> | mpc_init2 (c, 53);
> | mpc_set_ui_ui (c, 1, 1, MPC_RNDNN);
> | mpc_cosh (c, c, MPC_RNDNN);
> | mpc_pow (c, c, c, MPC_RNDNN);
> | mpc_acosh (c, c, MPC_RNDNN);
> | mpc_clear (c);
> |
> | ;
> | return 0;
> | }
> configure:5654: result: no
> configure:5675: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC
> 0.8.0+.
> Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify
> :
> <snip>
>
> ----------------
>
> hmm... :-<
> I look.
>
> $ nm obj/tooldir.NetBSD-6.99.41-evbarm/lib/libgmp.a | grep
> __gmpn_invert_limb | sort -u
> U __gmpn_invert_limb
>
>
> I found invert_limb.asm in under arm directory.
>
> $ find external/lgpl3/gmp/dist/mpn/arm -name invert_limb\*
> external/lgpl3/gmp/dist/mpn/arm/invert_limb.asm
>
> But I not found link to that in obj directory. X-<
>
> $ ls obj/tools/gmp/build/mpn/*asm
> ls: No match.
>
>
> I understood that the link to the asm file of MD could not be created
> in earm. In earm, I think that the same processing as arm is required.
>
> Index: configure
> ===================================================================
> RCS file: /cvsroot/src/external/lgpl3/gmp/dist/configure,v
> retrieving revision 1.3
> diff -u -r1.3 configure
> --- configure 29 Nov 2013 07:57:10 -0000 1.3
> +++ configure 11 Jun 2014 13:36:32 -0000
> @@ -4142,7 +4142,7 @@
> ;;
>
>
> - arm*-*-*)
> + arm*-*-* | earm*-*-*)
> gcc_cflags="$gcc_cflags $fomit_frame_pointer"
> gcc_cflags_optlist="arch tune"
> gcc_cflags_maybe="-marm"
>
>
> I was able to do building of tools in this fix.
> I do not understand in better method with this fix.
> For an earm user, I ask you for more better fix.
>
> Thanks,
> --
> kiyohara
That's not the right fix. I've updated configfsf.guess to do the right thing.
Can you please back it out?
Home |
Main Index |
Thread Index |
Old Index