This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gcc-4.2.2 on Solaris2.9 - build fails - needs 32-bit gmp/mpfr


I am trying to build gcc-4.2.2 for sparc-sun-solaris2.9, but the build seems to
require 32-bit gmp and mpfr in addition to 64-bit gmp and mpfr.  I have built
these 32-bit dependencies, but have already used the "--with-gmp" and
"--with-mpfr" to point to the 64-bit libraries.  Questions:  Is it true that a
native bootstrap build of gcc-4.2.2 this on this platform will require both 32
and 64-bit gmp and mpfr?  If so, how can I specify these additional locations?
I have tried setting "--with-gmp" to the 32-bit location and "--with-mpfr" to
the 64-bit location.  Perhaps this would have worked, except that at points
where f951 gets invoked, it can not find its dependencies because
LD_LIBRARY_PATH gets stripped out of its calling environment.  I keep wishing I
could get RUNPATHs embedded to avoid this problem.

I did succeed in building gcc-4.2.2 on this host (notes on this forthcoming),
but only by employing a nasty hack which forced every compiled binary to
64-bit:

        GCC_FOR_TARGET = $(STAGE_CC_WRAPPER) ./xgcc -m64 -B./
        -B$(build_tooldir)/bin/ -isystem $(build_tooldir)/include -isystem
        $(build_tooldir)/sys-include -L$(objdir)/../ld                                  
The resulting gcc, of course would only work if I used the -m64 flag for
everything.


Currently, the build fails with the following error.  with the following error:

        /path/to/src/gcc-4.2.2/gcc-4.2.2_build/./prev-gcc/xgcc
        -B/path/to/src/gcc-4.2.2/gcc-4.2.2_build/./prev-gcc/
        -B/path/to/gcc-4.2.2/sparc-sun-solaris2.9/bin/ -c   -g -O2 -DIN_GCC
        -W -Wall
	-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic
	-Wno-long-long -Wno-variadic-macros -Wno-overlength-strings
	-Wold-style-definition -Wmissing-format-attribute    -DHAVE_CONFIG_H -I.
	-Ifortran -I/path/to/src/gcc-4.2.2/gcc-4.2.2/gcc
	-I/path/to/src/gcc-4.2.2/gcc-4.2.2/gcc/fortran
	-I/path/to/src/gcc-4.2.2/gcc-4.2.2/gcc/../include -I./../intl
        -I/path/to/src/gcc-4.2.2/gcc-4.2.2/gcc/../libcpp/include
        -I/path/to/include
	-I/grid/gro/vol/gbl_statcomp_devel/sparc-32-solaris_nc/include
	-I/path/to/src/gcc-4.2.2/gcc-4.2.2/gcc/../libdecnumber -I../libdecnumber
	-I/path/to/include
	-I/grid/gro/vol/gbl_statcomp_devel/sparc-32-solaris_nc/include
        /path/to/src/gcc-4.2.2/gcc-4.2.2/gcc/fortran/trans-types.c -o
        fortran/trans-types.o
        /path/to/src/gcc-4.2.2/gcc-4.2.2_build/./prev-gcc/xgcc
        -B/path/to/src/gcc-4.2.2/gcc-4.2.2_build/./prev-gcc/
        -B/path/to/gcc-4.2.2/sparc-sun-solaris2.9/bin/   -g -O2 -DIN_GCC   -W
        -Wall
	-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic
	-Wno-long-long -Wno-variadic-macros -Wno-overlength-strings
        -Wold-style-definition -Wmissing-format-attribute    -DHAVE_CONFIG_H
        -o f951 \
        [SNIP]
	fortran/trans-intrinsic.o fortran/trans-io.o fortran/trans-openmp.o
	fortran/trans-stmt.o fortran/trans-types.o main.o  libbackend.a
	../libcpp/libcpp.a ../libdecnumber/libdecnumber.a -L/path/to/lib
	-L/grid/gro/vol/gbl_statcomp_devel/sparc-32-solaris_nc/lib -lmpfr -lgmp
	../libcpp/libcpp.a ./../intl/libintl.a -liconv  ../libiberty/libiberty.a

        ../libdecnumber/libdecnumber.a /path/to/bin/ld: skipping incompatible
        /path/to/lib/libmpfr.so when searching for -lmpfr /path/to/bin/ld:
        skipping incompatible /path/to/lib/libmpfr.a when searching for -lmpfr
        /path/to/bin/ld:

	cannot find -lmpfr collect2: ld returned 1 exit status make[3]: *** [f951]
Error 1

Any suggestions greatly appreciated!

-- 
Yorick


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]