public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
From: Peter Elmer <Peter.Elmer@cern.ch>
To: <gcc-help@gcc.gnu.org>
Subject: Problems building gcc4.5.0 fortran compiler when gold is enabled
Date: Thu, 22 Apr 2010 06:48:00 -0000	[thread overview]
Message-ID: <20100421183116.GK24476@localhost.localdomain> (raw)

  Hi,

  I'm having some problems building gcc4.5.0 on linux/x86_64 with the fortran 
compiler, graphite and gold all enabled at the same time. The build dies with 
errors as in (a) below when attempting to link f951 itself (in stage 2 of the
compiler build). 

  The machine I'm using for the build itself is a RHEL5-derived system 
(Scientific Linux 5) with gcc4.1.2 and binutils 2.17.50 on the system 
itself. I however build and use binutils 2.20.1 as part of my build. Since a 
number of pieces are involved in building with gcc450/graphite/gold, I've 
summarized the full build procedure I'm using in a single flat recipe in (b) 
below. 

  Does anyone recognize this problem? Is there something missing or 
incorrect in my build recipe or something to be fixed in the gcc gfortran 
build when gold and graphite (using ppl) are simultaneously enabled? 

                                 cheers,
                                   Pete

(a)

/build/45go/BUILD/slc5_amd64_gcc450/external/gcc/4.5.0/gcc-4.5.0/obj/./prev-gcc/xgcc -B/build/45go/BUILD/slc5_amd64_gcc450/external/gcc/4.5.0/gcc-4.5.0/obj/./prev-gcc/ -B/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/x86_64-unknown-linux-gnu/bin/ -B/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/x86_64-unknown-linux-gnu/bin/ -B/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/x86_64-unknown-linux-gnu/lib/ -isystem /build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/x86_64-unknown-linux-gnu/include -isystem /build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/x86_64-unknown-linux-gnu/sys-include     -g -O2 -gtoggle -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wc++-compat   -DHAVE_CONFIG_H  -o f951 \
                fortran/arith.o fortran/array.o fortran/bbt.o fortran/check.o fortran/cpp.o fortran/data.o fortran/decl.o fortran/dump-parse-tree.o fortran/error.o fortran/expr.o fortran/interface.o fortran/intrinsic.o fortran/io.o fortran/iresolve.o fortran/match.o fortran/matchexp.o fortran/misc.o fortran/module.o fortran/openmp.o fortran/options.o fortran/parse.o fortran/primary.o fortran/resolve.o fortran/scanner.o fortran/simplify.o fortran/st.o fortran/symbol.o fortran/target-memory.o  fortran/convert.o fortran/dependency.o fortran/f95-lang.o fortran/trans.o fortran/trans-array.o fortran/trans-common.o fortran/trans-const.o fortran/trans-decl.o fortran/trans-expr.o 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 ../libcpp/libcpp.a   ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a  attribs.o -L/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/tmp/cloog-ppl/lib -lcloog -L/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/tmp/ppl/lib -lppl_c -lppl -lgmpxx -L/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/tmp/gmp/lib -L/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/tmp/mpfr/lib -L/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/tmp/mpc/lib -lmpc -lmpfr -lgmp -rdynamic -ldl  -L../zlib -lz
/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/x86_64-unknown-linux-gnu/bin/ld: /build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/tmp/ppl/lib/libppl_c.a(ppl_c_implementation_common.o): in function ppl_io_asprint_variable:ppl_c_implementation_common.cc:2004: error: undefined reference to '__cxa_begin_catch'
/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/x86_64-unknown-linux-gnu/bin/ld: /build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/tmp/ppl/lib/libppl_c.a(ppl_c_implementation_common.o): in function ppl_io_asprint_variable:ppl_c_implementation_common.cc:2004: error: undefined reference to '__cxa_end_catch'
/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/x86_64-unknown-linux-gnu/bin/ld: /build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/tmp/ppl/lib/libppl_c.a(ppl_c_implementation_common.o): in function ppl_io_asprint_variable:ppl_c_implementation_common.cc:2004: error: undefined reference to '__cxa_begin_catch'
/build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/x86_64-unknown-linux-gnu/bin/ld: /build/45go/slc5_amd64_gcc450/external/gcc/4.5.0/tmp/ppl/lib/libppl_c.a(ppl_c_implementation_common.o): in function ppl_io_asprint_variable:ppl_c_implementation_common.cc:2004: error: undefined reference to '__cxa_end_catch'
<... many other errors including various std:: symbols ...>

(b)

# Starting from some convenient directory in which to do a build

export MYBUILD=$PWD
mkdir $MYBUILD/install
mkdir $MYBUILD/tmp
wget ftp://ftp.fu-berlin.de/unix/gnu/gcc/gcc-4.5.0/gcc-4.5.0.tar.bz2
wget ftp://ftp.gnu.org/gnu/gmp/gmp-4.2.4.tar.bz2
wget http://www.mpfr.org/mpfr-2.3.2/mpfr-2.3.2.tar.bz2
wget http://www.multiprecision.org/mpc/download/mpc-0.8.1.tar.gz
wget http://www.cs.unipr.it/ppl/Download/ftp/releases/0.10.2/ppl-0.10.2.tar.bz2
wget ftp://gcc.gnu.org/pub/gcc/infrastructure/cloog-ppl-0.15.9.tar.gz
wget http://ftp.gnu.org/gnu/bison/bison-2.4.tar.bz2
wget http://ftp.gnu.org/gnu/binutils/binutils-2.20.1.tar.bz2

gtar xjf gcc-4.5.0.tar.bz2
gtar xjf gmp-4.2.4.tar.bz2
gtar xjf mpfr-2.3.2.tar.bz2
gtar xzf mpc-0.8.1.tar.gz
gtar xjf ppl-0.10.2.tar.bz2
gtar xzf cloog-ppl-0.15.9.tar.gz
gtar xjf bison-2.4.tar.bz2
gtar xjf binutils-2.20.1.tar.bz2

# build bison as it is missing on the system and needed for binutils
cd bison-2.4
./configure --prefix=$MYBUILD/tmp/bison > configlog.out 2>&1
make -j6 > buildlog.out 2>&1
make install > installlog.out 2>&1 
export PATH=$MYBUILD/tmp/bison/bin:$PATH

cd ../binutils-2.20.1
./configure --prefix=$MYBUILD/install --enable-gold > configlog.out 2>&1
make -j6 > buildlog.out 2>&1
# Minor fixup for the install 
perl -p -i -e 's|LN = ln|LN = cp -p|;s|ln ([^-])|cp -p $1|g' `find . -name Makefile`
make install > installlog.out 2>&1

# Make temporary {gmp,mpfr,mpc,ppl,cloog-ppl} builds as they are needed 
# for gcc4.5 with graphite enabled. 
cd ../gmp-4.2.4
./configure --prefix=$MYBUILD/tmp/gmp --disable-shared > configlog.out 2>&1
make -j6 > buildlog.out 2>&1
make install > installlog.out 2>&1

cd ../mpfr-2.3.2
./configure --prefix=$MYBUILD/tmp/mpfr --with-gmp=$MYBUILD/tmp/gmp --disable-shared > configlog.out 2>&1
make -j6 > buildlog.out 2>&1
make install > installlog.out 2>&1

cd ../mpc-0.8.1
./configure --prefix=$MYBUILD/tmp/mpc --with-gmp=$MYBUILD/tmp/gmp --with-mpfr=$MYBUILD/tmp/mpfr --disable-shared > configlog.out 2>&1
make -j6 > buildlog.out 2>&1
make install > installlog.out 2>&1

cd ../ppl-0.10.2
./configure --prefix=$MYBUILD/tmp/ppl --disable-shared > configlog.out 2>&1
make -j6 > buildlog.out 2>&1
make install > installlog.out 2>&1

cd ../cloog-ppl-0.15.9
./configure --prefix=$MYBUILD/tmp/cloog-ppl --with-ppl=$MYBUILD/tmp/ppl --with-gmp=$MYBUILD/tmp/gmp --disable-shared > configlog.out 2>&1
make -j6 > buildlog.out 2>&1
make install > installlog.out 2>&1

# Build the compiler
cd ../gcc-4.5.0
mkdir -p obj
cd obj
../configure --prefix=$MYBUILD/install --enable-languages=c,c++,fortran --with-gmp=$MYBUILD/tmp/gmp --with-mpfr=$MYBUILD/tmp/mpfr --with-mpc=$MYBUILD/tmp/mpc --with-ppl=$MYBUILD/tmp/ppl --with-cloog=$MYBUILD/tmp/cloog-ppl --enable-shared --enable-gold > configlog.out 2>&1
make -j6 bootstrap > buildlog.out 2>&1



-------------------------------------------------------------------------
Peter Elmer     E-mail: Peter.Elmer@cern.ch      Phone: +41 (22) 767-4644
Address: CERN Division PPE, Bat. 32 2C-14, CH-1211 Geneva 23, Switzerland
-------------------------------------------------------------------------

             reply	other threads:[~2010-04-21 18:31 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-22  6:48 Peter Elmer [this message]
2010-04-24  1:06 ` Ian Lance Taylor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100421183116.GK24476@localhost.localdomain \
    --to=peter.elmer@cern.ch \
    --cc=gcc-help@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).