This is the mail archive of the gcc-patches@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]

Re: [PATCH] Fix mingw32 bootstrap regression.


On Sun, Dec 24, 2006 at 08:52:27AM +1300, Danny Smith wrote:
> 
> > > O, I also got the silly Make error, where I need to change 
> > >   ORIGINAL_LD_FOR_TARGET =
> > >   
> > C:/mingw/bin/../lib/gcc/mingw32/3.4.2/../../../../mingw32/bin/ld.exe
> > > to
> > >   ORIGINAL_LD_FOR_TARGET =
> > >   /mingw/bin/../lib/gcc/mingw32/3.4.2/../../../../mingw32/bin/ld.exe
> > > Do you do this each time?
> > > 
> 
> I never need to do it.  configure gives me:
> ORIGINAL_AS_FOR_TARGET = /mingw/i686-pc-mingw32dw2/bin/as
> ORIGINAL_LD_FOR_TARGET = /mingw/i686-pc-mingw32dw2/bin/ld
> 
> which get put into local as and ld shell scripts.

OK, I figured this out. When I saw your mount table I copied the 
  mount C:/mingw /mingw
This got me past that error when I do a make bootstrap. Now I have,
  ORIGINAL_AS_FOR_TARGET = /mingw/mingw32/bin/as
  ORIGINAL_LD_FOR_TARGET = /mingw/mingw32/bin/ld
  ORIGINAL_NM_FOR_TARGET = /mingw/mingw32/bin/nm
similar to yours.

> This error:
> > >   -o libgcc/./_chkstk.o
> > > xgcc.exe: CreateProcess: No such file or directory
> 
> is probably because ORIGINAL_AS_FOR_TARGET is incorrect in your
> configuration.

Unfortunatly it's not. Although I must be getting closer.

> What sh.exe are you using?  

$ PATH=/mingw/bin:$PATH which sh
/usr/bin/sh

$ PATH=/mingw/bin:$PATH df /usr/bin
Filesystem           1K-blocks      Used Available Use% Mounted on
C:\cygwin\bin         40957684  38423000   2534684  94% /usr/bin

So, I'm using cygwin's sh, I'm pretty sure that's what you wanted.

How is your build dir rooted (is it binmode)? 

That's a good question. I hadn't thought of that.

$ df $PWD
Filesystem           1K-blocks      Used Available Use% Mounted on
C:\cygwin             40957684  38423000   2534684  94% /

$ mount  
C:\cygwin on / type system (binmode)

If I do 
export PATH=/mingw/bin:$PATH

../gcc/configure \
--with-gmp=c:/msys/1.0/home/bobbybrasko/gcc/gmp/gmp \
--with-mpfr=c:/msys/1.0/home/bobbybrasko/gcc/mpfr/prefixdir \
--with-gcc  --enable-libgomp --host=mingw32 \
--build=mingw32 --target=mingw32 --with-arch=i486 \
--with-tune=i686 --disable-werror --prefix=/mingw \
--with-local-prefix=/mingw --enable-threads --disable-nls \
--enable-languages=c,c++,objc,fortran --disable-win32-registry \
--disable-sjlj-exceptions --enable-libstdcxx-debug \
--enable-cxx-flags='-fno-function-sections -fno-data-sections' \
-enable-shared --enable-version-specific-runtime-libs 2>&1 | tee
configure-out.txt

make  CXXFLAGS="-mthreads -O2" bootstrap  2>&1 | tee make-out.txt

I now get to the same error message without the Makefile problem.

if [ -f stmp-dirs ]; then true; else touch stmp-dirs; fi
/home/bobbybrasko/gcc/svn/build3/./gcc/xgcc 
-B/home/bobbybrasko/gcc/svn/build3/./gcc/ 
-L/home/bobbybrasko/gcc/svn/build3/mingw32/winsup/mingw 
-L/home/bobbybrasko/gcc/svn/build3/mingw32/winsup/w32api/lib 
-isystem /home/bobbybrasko/gcc/svn/gcc/winsup/mingw/include 
-isystem /home/bobbybrasko/gcc/svn/gcc/winsup/w32api/include 
-B/mingw/mingw32/bin/ -B/mingw/mingw32/lib/ 
-isystem /mingw/mingw32/include 
-isystem /mingw/mingw32/sys-include -O2 
-I../../gcc/gcc/../winsup/w32api/include -O2 -g -O2  -DIN_GCC    
-W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes 
-Wold-style-definition  -isystem ./include   -g -DHAVE_GTHR_DEFAULT 
-DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -I. -I. -I../../gcc/gcc 
-I../../gcc/gcc/. -I../../gcc/gcc/../include 
-I../../gcc/gcc/../libcpp/include 
-Ic:/msys/1.0/home/bobbybrasko/gcc/gmp/gmp/include 
-Ic:/msys/1.0/home/bobbybrasko/gcc/mpfr/prefixdir/include 
-I../../gcc/gcc/../libdecnumber -I../libdecnumber -DL_chkstk 
-xassembler-with-cpp -c ../../gcc/gcc/config/i386/cygwin.asm 
-o libgcc/./_chkstk.o
xgcc.exe: CreateProcess: No such file or directory
make[4]: *** [libgcc/./_chkstk.o] Error 1
make[4]: Leaving directory `/home/bobbybrasko/gcc/svn/build3/gcc'
make[3]: *** [libgcc.a] Error 2
make[3]: Leaving directory `/home/bobbybrasko/gcc/svn/build3/gcc'
make[2]: *** [all-stage1-gcc] Error 2
make[2]: Leaving directory `/home/bobbybrasko/gcc/svn/build3'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/home/bobbybrasko/gcc/svn/build3'
make: *** [bootstrap] Error 2

Are you doing anything with a sysroot? or did you setup the i686
directory special somehow? What about the --enable-shared? I was under
the impression that didn't work with mingw.

Thanks,
Bob Rossi


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