Assembler error

ian@cygnus.com ian@cygnus.com
Fri Oct 10 02:17:00 GMT 1997


In gnu-win32 avernet@scdi.org (Alessandro Vernet) writes:

>Note that I have no problem compiling this file under Linux (also with
>gcc 2.7.2) or Digital UNIX. I will finally add that the source file I am
>trying to assemble takes about 15 Mb (the original C file was about 7
>Mb).

>	bash$ gcc -c sep_cfront_end.s
>	BFD: sep_cfront_end.o: reloc overflow: 0x5815e > 0xffff
>	sep_cfront_end.s: Assembler messages:
>	sep_cfront_end.s:886904: Error: bfd_coff_swap_scnhdr_out failed
>	gcc: Internal compiler error: program as got fatal signal 1

The i386 PE format uses a 16 bit integer to represent the number of
relocations in a single section.  This message is telling you that the
field overflowed: there are too many relocations in some section of
your input file.  I think the only solution is to break up the file.
You could also try the -ffunction-sections gcc option; I don't know if
it works for the i386 PE target, though.

Ian
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".



More information about the Cygwin mailing list