Mailing-List: contact cygwin-help@sourceware.cygnus.com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@sources.redhat.com Delivered-To: mailing list cygwin@sources.redhat.com Date: Fri, 20 Oct 2000 14:03:55 -0400 Message-Id: <200010201803.OAA19313@envy.delorie.com> From: DJ Delorie To: cygwin@sources.redhat.com In-reply-to: <20001020135305.C14359@cygnus.com> (message from Christopher Faylor on Fri, 20 Oct 2000 13:53:05 -0400) Subject: Re: Cygwin SEGVs References: <20001017120354.A9810@cygnus.com> <20001017205249.7782.qmail@lizard.curl.com> <20001020053504.5350.qmail@lizard.curl.com> <20001020135305.C14359@cygnus.com> > There is a problem. Someone changed the top level configure a while ago > and broke things. That would be me, so I guess I better explain ;-) GCC has a "-B" flag that *used* to be used just to find things like cc1, cpp, as, and ld. However, the GCC team has been using that option for many other things. One of those things is to find crt0.o (the libraries have their own options). There is *no* other way to find crt0.o! So, this switch is kinda mandatory if you want to link your programs with the right crt0.o. Unfortunately, gcc warns you if the -B option isn't used to find cc1, cpp, as, or ld. The warning totally ignores other valid uses of -B, so the warning was removed from the gcc sources (by me). If old versions didn't exist, we'd be all set. As for workarounds for old gccs, there are two: 1. Binary-edit your gcc.exe to remove that warning. Not for the feint of heart. 2. Remove that option in configure, and hope that the *installed* crt0.o is compatible with the *built* crt0.o (or copy it). You could also go through all the Makefiles and add that -B option to the specific link lines, but that's a tricky thing to get right. -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe@sourceware.cygnus.com