mainline ld on mingw32/pe is broken, returns 1 without error.

Aaron W. LaFramboise aaron98wiridge9@aaronwl.com
Sun Jun 27 04:32:00 GMT 2004


Alan Modra wrote:

> On Sat, Jun 26, 2004 at 08:29:15PM -0500, Aaron W. LaFramboise wrote:
> 
>>ld -o hello.exe
>>c:/aaronwl/cs/env/mingw-3.4.0-2.15-3.3/bin/../lib/gcc/i686-pc-mingw32/3.4.0/../../../crt2.o
>>-Lc:/aaronwl/cs/env/mingw-3.4.0-2.15-3.3/bin/../lib/gcc/i686-pc-mingw32/3.4.0
>>hello.o -lmingw32 -lgcc -lmsvcrt -lkernel32
>>
>>It prints absolutely no messages, but exits with code 1, and does not
>>leave output files.
>>
>>How should I begin to debug this?  Any ideas what change caused this?
> 
> 
> There's a good chance this is due to my 2004-06-24 section sizing
> change.  Build binutils from source just before this change went in, and
> see if ld is good.  Assuming it is, compare hello.exe before and after
> the patch.  Any change is suspicious, apart from the silly timestamp in
> pe files.  objdump will let you look at section sizes..
> 

When I reverted my binutils tree to June 23 from today, this bug went
away.  When I set it to June 24, it came back.
http://sources.redhat.com/ml/binutils-cvs/2004-06/msg00088.html
http://sources.redhat.com/ml/binutils/2004-06/msg00210.html

I can't compare the two files, because the buggy ld does not emit
hello.exe at all.  It just silently exits with exit code as 1.  Is there
some set of flags I should pass that would help trace ld's execution?
ld -t seems to indicate it is reading from all of the files it should,
but I can't say for sure.

Aaron W. LaFramboise



More information about the Binutils mailing list