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

Re: cygwinB19 boostrap problem

Jan Reimers <> writes:
> I am trying to bootstrap egcs-980308 on a cygwin beta 19 platform.
> I have applied Mumit Khans cygwin32.diff patch (libstdc++.diff and
> config.diff from Mumit seem
> to already have been applied).

I've been too busy with 1.0.2 release to pay attention to the snapshots
lately, but I believe all/most of the cygwin32 patches have been in the
development trunk for a while now. I'll start playing with snapshots
this weekend.

The snapshots and are the release tree are different enough that the
release patches that I've published won't work on the snapshots. Also,
I retracted two patches for the release -- libstc++.diff and 
c++-expl-templ.diff -- these were not correct.

> 1) I found I had to add a library in the gcc/Makefile to get cccp.exe to
> link.
> CLIB=-ladvapi32

You should apply my egcs-1.0.2 patches (URLs below), not the ones for
the pre-release I built for testers, which will add the -ladvapi32 to 
the default set of libraries. Then the bootstrap will then work ok.

> 2) After that point xgcc is created, and then it fails when trying
> compile enquire.c with xgcc:
> /MyFiles/tar/egcs/gcc/xgcc -B/MyFiles/tar/egcs/gcc/  -DIN_GCC    -g -O2
> -I./incl
> ude     -DNO_MEM -DNO_LONG_DOUBLE_IO -O0 \
>   -I. -c ../../egcs-src/gcc/enquire.c
> ../../egcs-src/gcc/enquire.c:395: stdio.h: No such file or directory
> ../../egcs-src/gcc/enquire.c:406: sys/types.h: No such file or directory
> ../../egcs-src/gcc/enquire.c:407: signal.h: No such file or directory
> ../../egcs-src/gcc/enquire.c:408: setjmp.h: No such file or directory
> There seems to be an '-I/Cygwin/B19/H-i386-cygwin32/i386-cygwin/include'
> directive missing.
> Is this correct? Or are there more fundamental problems with what I am
> trying to do?

Nope. That's because of the Cygnus default directory hierarchy, chosen
for ease of maintaining multiple targets, but that means you need special
configure parameters.

This is how you should configure:
  % configure --prefix=/Cygnus/B19 \
    --exec-prefix=/Cygnus/B19/H-i386-cygwin32 \

Cygnus also modifies the DRIVER_DEFINES in gcc/ as well as
adding "unlibsubdir" so that tooldir_prefix is relative, not absolute.

See the cygnus.diff in the "patches/broken-down" directory under 1.0.2
patches on my site. This is extracted from Cygnus' source tree and not
really appropriate IMO for the standard releases.

I don't use Cygnus directory hierarchy, so it doesn't bother me. I build
cygwin32 using --prefix=/usr and get rid of all these problems.


Check out the patches and patches/broken-down directories.


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