Subject: Re: Crosscompile linking questions
To: Anders =?iso-8859-1?Q?Nyg=E5rd?= <anders.nygard@netinsight.net>
From: Richard Earnshaw <rearnsha@arm.com>
List: port-arm32
Date: 07/04/2001 13:45:37
> The following code:
> =
> int m(){
> static char c[100000];
> }
> =
> int main(int argc, char **argv){
> m();
> }
> =
> generates an executable size of 76104.
> =
> nm generates a list of 285 lines (enclosed).
Ah! I think I understand. The compiler is creating the executable usin=
g =
crt0.o, when for a static link it should probably be using scrt0.o. =
crt0.o contains the dl.. functions which in turn link in the printf =
functions which then brings in half of libc.
Try using gcc -v to get the link command. Then copy the link line and =
change crt0.o to scrt0.o
R.