[Introspector-developers] Build instructions for the cywin ssa branch
Status: Beta
Brought to you by:
mdupont
|
From: James M. D. <mdu...@ya...> - 2002-11-01 16:16:55
|
Here are the steps to build the cygwin gcc with the introspector patches 0. Getting the sources cvs -d:pserver:an...@su...:/cvsroot/gcc login # password is empty cvs -d:pserver:an...@su...:/cvsroot/gcc co -r tree-ssa-20020619-branch gcc 0.0.1 Patch : http://introspector.sourceforge.net/cygwin/ssa-branch-patch.txt 0.1 Configure, make --------------------------------------------------------------------- 1. hacking libjava configure In the libjava/configure : I hacked the test for the java thread model. echo $ac_n "checking for thread model used by GCC""... $ac_c" 1>&6 echo "configure:3165: checking for thread model used by GCC" >&5 #THREADS=`$CC -v 2>&1 | sed -n 's/^Thread model: //p'` THREADS=none -------------------------------------------------------------------- 2. Hacking libmudflap For LibMudFlap I added this file for the libmudflap execinfo.h /* This was added by mdupont This library is free software; you can redistribute it and/or it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ #ifndef _EXECINFO_H #define _EXECINFO_H int backtrace(int, int); int backtrace_symbols(int, int); #endif -------------------------------------------------------------------- 3. The standard make did not build libgc or libjava these need to be built separatly 4. you can debug by adding these commands to the compiler : -fdump-translation-unit -g -save-temps --verbose then you can extract the sources. 4.1 The dumper crashes on the following file and will need to be debugged. /gcc/i686-pc-cygwin/libiberty/floatformat.c To get the commands rm floatformat.o make floatformat.o > command.sh extract that, add -fdump-translation-unit -g --verbose BUT DONT ADD -save-temps, it you add this, the error does not happen /cygdrive/c/development/testing/gcc/gcc/gcc/xgcc -B/cygdrive/c/development/testing/gcc/gcc/gcc/ -B/usr/local/i686-pc-cygwin/bin/ -B/usr/local/i686-pc-cygwin/lib/ -isystem /usr/local/i686-pc-cygwin/include -c -DHAVE_CONFIG_H -O2 -g -O2 -I. -I./../../include -W -Wall -Wtraditional -pedantic floatformat.c -fdump-translation-unit -g --verbose -o floatformat.o The command line that crashed this was : /cygdrive/c/development/testing/gcc/gcc/gcc/cc1.exe -quiet -v -I. -I./../../include -iprefix /cygdrive/c/development/testing/gcc/gcc/gcc/../lib/gcc-lib/i686-pc-cygwin/3.4-tree-ssa/ -isystem /cygdrive/c/development/testing/gcc/gcc/gcc/include -isystem /usr/local/i686-pc-cygwin/bin/include -isystem /usr/local/i686-pc-cygwin/lib/include -D__GNUC__=3 -D__GNUC_MINOR__=4 -D__GNUC_PATCHLEVEL__=0 -D__CYGWIN32__ -D__CYGWIN__ -Dunix -D__unix__ -D__unix -isystem /usr/local/include -idirafter /usr/local/i686-pc-cygwin/include -idirafter /usr/include -idirafter /usr/local/i686-pc-cygwin/include/w32api -idirafter /usr/include/w32api -DHAVE_CONFIG_H -isystem /usr/local/i686-pc-cygwin/include floatformat.c -quiet -dumpbase floatformat.c -auxbase-strip floatformat.o -g -g -O2 -O2 -W -Wall -Wtraditional -pedantic -version -fdump-translation-unit -o /cygdrive/d/DOCUME~1/mdupont/LOCALS~1/Temp/ccJGy9eG.s Here are the versbose output of the command : http://introspector.sourceforge.net/cygwin/floatformat.bug 4.2 the dumper crashed on the following files /gcc/i686-pc-cygwin/libstdc++-v3/libsupc++/del_op.cc this command reproduces the crash : /cygdrive/c/development/testing/gcc/gcc/gcc/cc1plus.exe -fpreprocessed del_op.ii -quiet -dumpbase del_op.cc -auxbase-strip del_op.o -g -g -O2 -Wall -Wno-format -W -Wwrite-strings -Winline -version -fno-implicit-templates -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -fdump-translation-unit -o del_op.s The file is located here http://introspector.sourceforge.net/cygwin/del_op.ii can someone else try compiling this, With a standard gcc 3.2 and the -fdump-translation-unit and the gcc saa branch? Thanks, mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? HotJobs - Search new jobs daily now http://hotjobs.yahoo.com/ |