This is the mail archive of the
mailing list for the Cygwin project.
RE: binutils: Strange ld error: Error: 0-bit reloc in dll
- From: "Hannu E K Nevalainen" <garbage_collector at telia dot com>
- To: <cygwin at cygwin dot com>
- Date: Sun, 26 Oct 2003 13:18:38 +0100
- Subject: RE: binutils: Strange ld error: Error: 0-bit reloc in dll
> From: Gerrit P. Haase
> Sent: Saturday, October 25, 2003 9:46 PM
> Additional info about the statements that it happens with big object
> $ d gucharmap-unicode-info.o
> rw-r--r-- #gerrit:Admins 3.9M Oct 25 19:27 gucharmap-unicode-info.o
> 1 regular files, with a total size of 3.9M.
> May be that is just too big?
! NOTE: I write this without really knowing about anything WRT ld...
! Please, take all I say with a grain of salt, auto adjust details,
! and so on ;-] - I'm here just in hope to help.
Hmm? That would be very strange IMO... assuming size is measured in bytes
it would imply a very odd usage of data types, i.e. 20 bits or some such:
$ for ((n=1;n<33;n++)) ;do v=$(( 1 << ( $n ) )) \
;echo "$n bits -> range $v";done
16 bits -> range 65536
17 bits -> range 131072
18 bits -> range 262144
19 bits -> range 524288
20 bits -> range 1048576
21 bits -> range 2097152
22 bits -> range 4194304
23 bits -> range 8388608
24 bits -> range 16777216
How about the sum of *.o sizes; does that step past some 'bit-boundary' in
line with whats shown above?
What datatype is used for adding up *.o sizes in ld?
Is there some legacy code in there?
I know that O.L.D. versions of MAC OS used the upper 8 bits of 32 bit
address pointers for some obscure data (remember: 24 bit address bus on some
/Hannu E K Nevalainen, B.Sc. EE - 59?16.37'N, 17?12.60'E
-- printf("Timezone: %s\n", (DST)?"UTC+02":"UTC+01"); --
--END OF MESSAGE--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html