> Also, does anyone know what is meant by the 'size' of a function
> symbol?  Ie, "/usr/bin/ld: Warning: size of symbol `osenv_wakeup'
> changed from 26 to 42 in
> /usr/local/lib/oskit/../liboskit_dev.a(sleep.o)".  What does the size
> mean?  Reading the ELF spec hasn't helped me with this, nor has
> googling, nor has asking in #hurd at random times.

I suspect you have the following problem: you are adding a file,
`new.o', which contains a function `foo'.  There is a module `m' which
which references functions `foo' and `bar'.  There is a second file,
`orig.o', which contains functions `foo' and `bar'.  The link order
is:

  gcc m new.o orig.o

Thus, `foo' is taken from `new.o' (since `foo' is undefined after
reading `m').  Then `orig.o' is added (since `bar' is undefined at
that point in the link) but since we must add files (and not
functions) we end up with `foo' being redefined!


_______________________________________________
Help-hurd mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/help-hurd

Reply via email to