Re: Help with linking and symbol resolution

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> I do this:
>
>  $ gcc f1.c f2.c -Wall
> /usr/local/bin/ld: Warning: alignment 4 of symbol `c' in f2.o is smaller than 8 in f1.o
> /usr/local/bin/ld: Warning: size of symbol `c' changed from 8 in f1.o to 4 in f2.o
>
> You should always use -Wall when gcc does anything unexpected.
>

Hi Andrew

Yes, I get this warning too. But what I want to understand is why do
we get the size of c as 8 when it should be 4 because the linker will
find that there are multiple declarations of c and will keep the
strong one which is the declaration with int.

Please see slides 22,23,24 from here:
https://www.cs.cmu.edu/afs/cs/academic/class/15213-f10/www/lectures/11-linking.pdf

Lakshay G.



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux