Date: Wed, 2 Aug 1995 08:28:55 -0400 From: dj (DJ Delorie) To: ecorvell AT irisa DOT fr Cc: djgpp AT sun DOT soe DOT clarkson DOT edu Subject: Re: ** Comparison between DJGPP V2 & WATCOM C V10 ** > gcc -O1 a.c > strip --strip-all a.out > coff2exe a.out > A.EXE SIZE=33280 bytes > > gcc -O1 -c a.c -o a.o > ld a.o -o a.out ../lib/gcrt0.o -L../lib -T../lib/djgpp.lnk -lc > strip --strip-all a.out > coff2exe a.out > A.EXE SIZE=37376 bytes > > wcc386 -os a.c > wlink file a > A.EXE SIZE=25468 bytes > > First, why is there a difference of size between the two gcc outputs ? gcrt0.o is for profiling. Linking it in causes the profiling routines in libc.a to get linked in, causing the extra 4K. Use crt0.o instead. > Second, I am VERY distappointed by the difference of size between gcc and > wcc386... :( djgpp includes a lot of extra overhead to handle unix-like things that watcom won't give you. For example, command-line wildcards, long command lines, environment variables from a file, etc. It is possible in V2 to strip those out (it's documented, too!). The smallest (non-printf) program I can generate is 15,364 WITH the stub. If you add printf, it goes to 24,580 - which is still smaller than watcom. DJ