Subject: egcs collect2/ld bug update
From: [email-masked] (Mumit Khan)

31 Dec 1997 07:18:31 -0800
Message-ID: <[email-masked]>
To: [email-masked]

I'm beginning to sound like a broken record ;-)

Looks like collect2 (which is needed for C++ -frepo option, and that's
why I had it in the egcs distribution) is rather hosed due to various
problems. The best thing to do for now is to simply delete (or rename)
the collect2 executable. You gain a functional system, but you lose
-frepo.

  $ cd <root>/H-i386-cygwin32/lib/gcc-lib/i386-cygwin32/egcs-2.90.21 
  $ mv ld.exe ld-orig.exe

I suggest this for mingw32 users as well just to be consistent with
the cygwin32 distribution.

  $ cd <root>/lib/gcc-lib/i386-mingw32/egcs-2.90.21 
  $ mv ld.exe ld-orig.exe

If you're building from source, please add the following line:
  
  USE_COLLECT2=

to egcs/gcc/config/i386/x-cygwin32.

In case you're curious what the problem really is, here's a recap:
  
  1. Bug in fork/exec + freopen in winsup, where the child choses stderr. 
     Collect2 uses this to collect error messages from linker, and that's
     why you don't see 'undefined references to xxx' messages when using
     collect2.
  
  2. Bug in pathname handling. That's why you need the collect-ld.exe.

Thanks to all of you for your informative bug reports and your patience.

Happy New Year to all
Mumit
-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".