[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gm2] Building 32- and 64-bit gcc-4.7.3 on Solaris 10/sparc
From: |
john o goyo |
Subject: |
[Gm2] Building 32- and 64-bit gcc-4.7.3 on Solaris 10/sparc |
Date: |
Fri, 29 Aug 2014 14:58:47 -0400 |
User-agent: |
Mozilla/5.0 (X11; SunOS sun4u; rv:10.0) Gecko/20120130 Thunderbird/10.0 |
Having begun de nuovo, I now have a repeatable process for buidling
gcc-4.7.3 on Solaris 10/sparc using gcc-4.1.2. The problem was gmp,
which builds either 32-bit or 64-bit libraries and overwrites the
existing header file without warning.
The following are repeatable. I repeated the entire process ab initio
three times. On the other hand, gm2-4.7.3 fails at configuration (as
reported in a separate mail).
0. Environment:
(from printenv)
SHELL=/usr/bin/bash
LD_LIBRARY_PATH=/usr/local/lib:/home/build/gcc4.1.2/lib
LD_LIBRARY_PATH_64=/usr/local/lib/64:/home/build/gcc4.1.2/lib/sparcv9
PATH=/home/build/bin:/home/build/gcc4.1.2/bin:/usr/local/bin:\
/usr/dt/bin:/usr/xpg4/bin:/opt/sfw/bin:/usr/sfw/bin:\
/opt/sfw/teTeX/bin/sparc-sun-solaris2.10:/bin:/usr/bin:\
/usr/ccs/bin:/usr/ucb:/etc:.
(uname -a)
SunOS deux 5.10 Generic_137137-09 sun4u sparc SUNW,Sun-Blade-2500 \
Solaris
1. gmp-5.1.3:
./configure \
--libdir=/usr/local/lib/64 \
ABI=64 SHELL=/bin/bash
gmake builds cleanly;
gmake check passes all tests;
replace call to ranlib with call to echo in libtool;
gmake install;
in /usr/local/include, rename gmp.h --> gmp64.h; and
gmake distclean to prepare for 32-bits.
./configure \
ABI=32 SHELL=/bin/bash
gmake builds cleanly;
gmake check passes all tests;
replace call to ranlib with call to echo in libtool;
gmake install; and
in /usr/local/include, rename gmp.h --> gmp32.h.
Create /usr/local/include/gmp.h to include either gmp32.h or
gmp64.h conditional upon __LP64__ (defined by both gcc-4.1.2
and Sun Studio 12).
2. mpfr-4.1.2:
Note: Do NOT patch this version or the build of mpc will faild.
./configure \
--libdir=/usr/local/lib/64 \
--with-gmp-include=/usr/local/include \
--with-gmp-lib=/usr/local/lib/64 \
SHELL=/bin/bash CFLAGS=-mcpu=v9
gmake builds cleanly;
gmake check passes all tests;
replace call to ranlib with call to echo in libtool;
gmake install; and
gmake distclean in preparation for 32 bits.
./configure \
--with-gmp=/usr/local \
SHELL=/bin/bash \
CFLAGS="-mcpu=v9 -m32"
gmake builds cleanly;
gmake check passes all tests;
replace call to ranlib with call to echo in libtool; and
gmake install.
(Same header files are used for both versions.)
3. mpc-1.0.2
./configure \
--libdir=/usr/local/lib/64 \
--with-gmp-include=/usr/local/include \
--with-gmp-lib=/usr/local/lib/64 \
--with-mpfr-include=/usr/local/include \
--with-mpfr-lib=/usr/local/lib/64 \
SHELL=/bin/bash \
CFLAGS="-mcpu=v9"
gmake builds cleanly;
gmake check passes all tests;
gmake isntall; and
gmake clean to prepare for 32-bit build.
./configure \
--with-gmp=/usr/local \
--with-mpfr=/usr/local \
SHELL=/bin/bash \
CFLAGS="-mcpu=v9 -m32"
gmake builds cleanly; and
gmake check passes all tests except mpc_atan(op) with rounding error,
but remaining tests passed when run by hand; and
gmake install.
4. gcc-4.7.3 (unpatched):
$(SRCDIR)/gcc-4.7.3/configure \
--prefix=$HOME/gcc-4.7.3 \
--exec-prefix=$HOME/gcc-4.7.3 \
--without-gnu-ld --with-ld=/usr/ccs/bin/ld \
--with-gnu-as --with-as=/usr/sfw/bin/gas \
--with-mpc-include=/usr/local/include \
--with-mpc-lib=/usr/local/lib/64 \
--with-mpfr-include=/usr/local/include \
--with-mpfr-lib=/usr/local/lib/64 \
--with-gmp-include=/usr/local/include \
--with-gmp-lib=/usr/local/lib/64 \
--enable-languages=c,c++ \
--disable-bootstrap --enable-checking \
--enable-shared --disable-libitm
gmake builds cleanly; and
gmake install installed both 32- and 64-bit binaries.
john
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gm2] Building 32- and 64-bit gcc-4.7.3 on Solaris 10/sparc,
john o goyo <=