From: Danny S. <dan...@cl...> - 2005-07-06 07:34:14
|
> Rutger Ovidius > Sent: Tuesday, July 05, 2005 2:04 PM > > Friday, July 1, 2005, 10:51:07 PM, you wrote: > > RO> I am experiencing a strange problem with binutils and gcc 4 on > RO> win32. > > A quick followup on this problem. > > GCJ places strings at -O1 and above in a .rodata.jutf8.## section, > (~gcc/java/class.c:900) so a C testcase like the following > exhibits the problem (invalid .exe) when I make 84 or more > integers in these sections. 83 or less and the binary works fine. > > gcc4: gcc big.c > big.exe is not a valid Win32 application. > > int x1 __attribute__ ((section(".rodata.jutf8.1"))) = 0; > ... > ... The section names are wrong for windows target. PE-COFF wants something like .rdata$jutf8.1. Note that for PE-COFF '$' is the wildcard separator that tells ld to merge sections With your sections names the rdata sections won't be merged, and it seems that youve hit a limit on the number of allowable sections in an exe file. Danny |