By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
446,260 Members | 1,462 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 446,260 IT Pros & Developers. It's quick & easy.

About Visual C++ 2005 Express Edition

P: n/a
Does Visual C++ 2005 Express Edition produce small, compact C
executables?
Or there is another C compilers that do this better?

m.

Oct 3 '06 #1
Share this Question
Share on Google+
45 Replies


P: n/a
mistral wrote:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?
Or there is another C compilers that do this better?

m.
lcc-win32 produces (sometimes) smaller executables. The only
optimizations lcc-win32 does actually, are optimizations that delete
instructions, so the code is quite compact. The size of the libraries is
smaller too. Custom implementations could be smaller, if you
have a budget for them.

jacob

http://www.cs.virginia.edu/~lcc-win32
Oct 3 '06 #2

P: n/a
"mistral" <po*******@softhome.netwrote:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?
Or there is another C compilers that do this better?
I've always found Dev-C++ (<http://www.bloodshed.net/dev/index.html>)
useful, but I haven't checked the size of its executables.

Richard
Oct 3 '06 #3

P: n/a
mistral said:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?
Let's find out.

<later>

Well, it depends on what you mean by "small". :-)
Or there is another C compilers that do this better?
Here's a small source file, which should show up the overhead of various
compilers quite well:

#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}

Here are the executable image sizes, in bytes (implementations with "C++" in
their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760

I tried to download lcc-win32 for comparison purposes, but the main site's
download link was bad, and the backup site screamed "bad gateway" at me, so
I guess that comparison will have to wait for some other day.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #4

P: n/a

Richard Heathfield писал(а):
mistral said:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?

Let's find out.

<later>

Well, it depends on what you mean by "small". :-)
Or there is another C compilers that do this better?

Here's a small source file, which should show up the overhead of various
compilers quite well:

#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}

Here are the executable image sizes, in bytes (implementations with "C++"in
their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760

I tried to download lcc-win32 for comparison purposes, but the main site's
download link was bad, and the backup site screamed "bad gateway" at me, so
I guess that comparison will have to wait for some other day.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
--------------

The most code has compiler and platform dependancies?
In 'c' sources codes was not specified what compiler originally used.
Probably, better use Windows/X86 specific compiler (i.e. non
portable), freeware is Visual C++ 2005 Express Edition only?

m.

Oct 3 '06 #5

P: n/a
mistral said:
>
Richard Heathfield ?????(?):
>mistral said:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?

Let's find out.

<later>

Well, it depends on what you mean by "small". :-)
Or there is another C compilers that do this better?

Here's a small source file, which should show up the overhead of various
compilers quite well:

#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}

Here are the executable image sizes, in bytes (implementations with "C++"
in their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760

I tried to download lcc-win32 for comparison purposes, but the main
site's download link was bad, and the backup site screamed "bad gateway"
at me, so I guess that comparison will have to wait for some other day.
The most code has compiler and platform dependancies?
That's a meaningless question, but I presume you meant something by it, so
could you possibly re-phrase it?
In 'c' sources codes was not specified what compiler originally used.
Again, I don't understand this.
Probably, better use Windows/X86 specific compiler (i.e. non
portable), freeware is Visual C++ 2005 Express Edition only?
Of the compilers I listed above, gcc and VC2005 are both freeware. Borland
also do a couple of freeware compilers. See also Digital Mars, MinGW, lcc,
and Pacific C. I suppose there's also lcc-win32, but I tried to get it
earlier today and failed completely so I suppose it's no longer available.

On the following page, you will find hyperlinks to their home pages:

http://www.cpax.org.uk/prg/portable/...#FreeCompilers

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #6

P: n/a
jacob navia wrote:
mistral wrote:
>Does Visual C++ 2005 Express Edition produce small, compact C
executables? Or there is another C compilers that do this better?

m.
lcc-win32 produces (sometimes) smaller executables. The only
That must be rare, there's many tricks that can save enormous amount
of generated code, and visual studio can do alot of them..
optimizations lcc-win32 does actually, are optimizations that delete
instructions, so the code is quite compact. The size of the libraries is
smaller too. Custom implementations could be smaller, if you
have a budget for them.
How different is it from the lcc available for e.g. linux ?
It always generates function pre/postambles to save and
restore certain registers even if they're never used..
Oct 3 '06 #7

P: n/a
Nils O. Selåsdal wrote:
jacob navia wrote:
>mistral wrote:
>>Does Visual C++ 2005 Express Edition produce small, compact C
executables? Or there is another C compilers that do this better?

m.
lcc-win32 produces (sometimes) smaller executables. The only

That must be rare, there's many tricks that can save enormous amount
of generated code, and visual studio can do alot of them..
>optimizations lcc-win32 does actually, are optimizations that delete
instructions, so the code is quite compact. The size of the libraries is
smaller too. Custom implementations could be smaller, if you
have a budget for them.

How different is it from the lcc available for e.g. linux ?
It always generates function pre/postambles to save and
restore certain registers even if they're never used..
I have rewritten most of the code there. It is now VERY rare
that a register is saved when there is no need.

I have added:
o register variables, automatically choosen by the compiler
o A peephole optimizer for the 386
o Added many optimizations like constant folding, and others.

Oct 3 '06 #8

P: n/a

Richard Heathfield писал(а):
mistral said:
Richard Heathfield ?????(?):
mistral said:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?
Let's find out.
<later>
Well, it depends on what you mean by "small". :-)
Or there is another C compilers that do this better?
Here's a small source file, which should show up the overhead of various
compilers quite well:
#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}

Here are the executable image sizes, in bytes (implementations with "C++"
in their title were invoked in C mode!):
gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760
I tried to download lcc-win32 for comparison purposes, but the main
site's download link was bad, and the backup site screamed "bad gateway"
at me, so I guess that comparison will have to wait for some other day.
The most code has compiler and platform dependancies?
That's a meaningless question, but I presume you meant something by it, so
could you possibly re-phrase it?
In 'c' sources codes was not specified what compiler originally used.
Again, I don't understand this.
Probably, better use Windows/X86 specific compiler (i.e. non
portable), freeware is Visual C++ 2005 Express Edition only?
Of the compilers I listed above, gcc and VC2005 are both freeware. Borland
also do a couple of freeware compilers. See also Digital Mars, MinGW, lcc,
and Pacific C. I suppose there's also lcc-win32, but I tried to get it
earlier today and failed completely so I suppose it's no longer available.
On the following page, you will find hyperlinks to their home pages:
http://www.cpax.org.uk/prg/portable/...#FreeCompilers
--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
------------

I just meant, that there are no specified in a source code, what
compiler author used.

Well, most portables files produce Visual C++ 1.5 and Turbo C++ 1.01.
However, this does not mean that it have better optimization, because
this compilers may just use dynamically linked dll (crtdll.dll) that
can be often in use in system, so this may affect on speed.
Not clear why so big difference in size between Visual C++ 2005 Express
Edition and old Visual C++ 1.5?

mistral

Oct 3 '06 #9

P: n/a
mistral said:

<snip>
>
I just meant, that there are no specified in a source code, what
compiler author used.
If it matters, it may well be written down in the source code somewhere, but
there is no requirement on programmers to document which compiler they
first targeted. Indeed, for code that is topical in comp.lang.c it doesn't
matter, because the code will work on /any/ compiler.
Well, most portables files produce Visual C++ 1.5 and Turbo C++ 1.01.
No. Those are the /smallest/ files. "Smallest" and "most portable" are two
different ideas.
However, this does not mean that it have better optimization, because
this compilers may just use dynamically linked dll (crtdll.dll) that
can be often in use in system, so this may affect on speed.
No, that's not the reason.
Not clear why so big difference in size between Visual C++ 2005 Express
Edition and old Visual C++ 1.5?
It's almost certainly (a) because VC1.5 created the executable program with
16-bit ints, 16-bit pointers, etc, whereas VC2005 probably used 32- or
possibly even 64-bit ints and pointers, and (b) because the older compiler
was targeting MS-DOS, a fairly simple and primitive set of interrupts,
whereas the newer compiler is targeting MS-Windows, a far more complicated
and advanced set of interruptions.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #10

P: n/a
Richard Heathfield wrote:
mistral said:

>>Does Visual C++ 2005 Express Edition produce small, compact C
executables?


Let's find out.

<later>

Well, it depends on what you mean by "small". :-)

>>Or there is another C compilers that do this better?


Here's a small source file, which should show up the overhead of various
compilers quite well:

#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}

Here are the executable image sizes, in bytes (implementations with "C++" in
their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760

I tried to download lcc-win32 for comparison purposes, but the main site's
download link was bad, and the backup site screamed "bad gateway" at me, so
I guess that comparison will have to wait for some other day.
Yes, virginia.edu is down

My data point is
lcc-win32 3104 bytes

compilation options
lc -O thello.c -s

But a more realistic example is:
#include <stdio.h>
int main(void)
{
printf("Hello world");
return 0;
}

This produces a code of 42 283 bytes (statically linked libc)
With dynamically linked libc we go down to 8152 bytes.

The code of printf is very bulky since needs an extended precision
library to correctly print denormal floating point numbers with all
the required precision. This is one of the few printfs that gets it
right, together with gcc's printf.

jacob

Oct 3 '06 #11

P: n/a
Richard Heathfield wrote:
mistral said:

>>Richard Heathfield ?????(?):

>>>mistral said:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?

Let's find out.

<later>

Well, it depends on what you mean by "small". :-)
Or there is another C compilers that do this better?

Here's a small source file, which should show up the overhead of various
compilers quite well:

#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}

Here are the executable image sizes, in bytes (implementations with "C++"
in their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760

I tried to download lcc-win32 for comparison purposes, but the main
site's download link was bad, and the backup site screamed "bad gateway"
at me, so I guess that comparison will have to wait for some other day.

The most code has compiler and platform dependancies?


That's a meaningless question, but I presume you meant something by it, so
could you possibly re-phrase it?

>>In 'c' sources codes was not specified what compiler originally used.


Again, I don't understand this.

>>Probably, better use Windows/X86 specific compiler (i.e. non
portable), freeware is Visual C++ 2005 Express Edition only?


Of the compilers I listed above, gcc and VC2005 are both freeware. Borland
also do a couple of freeware compilers. See also Digital Mars, MinGW, lcc,
and Pacific C. I suppose there's also lcc-win32, but I tried to get it
earlier today and failed completely so I suppose it's no longer available.
This is wrong. virginia.edu is down TODAY.

An alternative site is:

http://www.q-software-solutions.de

I can't GUARANTEE 100% availibity and you should know perfectly well
that the compiler IS AVAILABLE!!!

Dammed lies!
On the following page, you will find hyperlinks to their home pages:

http://www.cpax.org.uk/prg/portable/...#FreeCompilers
Oct 3 '06 #12

P: n/a
jacob navia <ja***@jacob.remcomp.frwrites:
Richard Heathfield wrote:
[...]
>Here's a small source file, which should show up the overhead of
various compilers quite well:
#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}
Here are the executable image sizes, in bytes (implementations with
"C++" in their title were invoked in C mode!):
gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760
I tried to download lcc-win32 for comparison purposes, but the main
site's download link was bad, and the backup site screamed "bad
gateway" at me, so I guess that comparison will have to wait for
some other day.

Yes, virginia.edu is down

My data point is
lcc-win32 3104 bytes

compilation options
lc -O thello.c -s

But a more realistic example is:
#include <stdio.h>
int main(void)
{
printf("Hello world");
return 0;
}

This produces a code of 42 283 bytes (statically linked libc)
With dynamically linked libc we go down to 8152 bytes.
But that's not a useful comparison unless you have sizes for *the same
program* for other compilers.
The code of printf is very bulky since needs an extended precision
library to correctly print denormal floating point numbers with all
the required precision. This is one of the few printfs that gets it
right, together with gcc's printf.
gcc has no printf; gcc is a compiler, not a complete implementation.
It uses whatever runtime library is provided by the operating system.
Do you mean glibc's printf?

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <* <http://users.sdsc.edu/~kst>
We must do something. This is something. Therefore, we must do this.
Oct 3 '06 #13

P: n/a
Keith Thompson wrote:
jacob navia <ja***@jacob.remcomp.frwrites:
>>Richard Heathfield wrote:

[...]
>>>Here's a small source file, which should show up the overhead of
various compilers quite well:
#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}
Here are the executable image sizes, in bytes (implementations with
"C++" in their title were invoked in C mode!):
gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760
I tried to download lcc-win32 for comparison purposes, but the main
site's download link was bad, and the backup site screamed "bad
gateway" at me, so I guess that comparison will have to wait for
some other day.

Yes, virginia.edu is down

My data point is
lcc-win32 3104 bytes

compilation options
lc -O thello.c -s

But a more realistic example is:
#include <stdio.h>
int main(void)
{
printf("Hello world");
return 0;
}

This produces a code of 42 283 bytes (statically linked libc)
With dynamically linked libc we go down to 8152 bytes.


But that's not a useful comparison unless you have sizes for *the same
program* for other compilers.
Heathfield's sample used puts. Puts is MUCH smaller than printf OF COURSE.

I just showed a more realistical example. Even with all printf, 8K
is very good in Heathfield's list. Using puts() I am the smallest.
>
>>The code of printf is very bulky since needs an extended precision
library to correctly print denormal floating point numbers with all
the required precision. This is one of the few printfs that gets it
right, together with gcc's printf.


gcc has no printf; gcc is a compiler, not a complete implementation.
It uses whatever runtime library is provided by the operating system.
Do you mean glibc's printf?
Obvious. Technically you are right, it's glibc's printf
Oct 3 '06 #14

P: n/a
jacob navia said:
Richard Heathfield wrote:
>>
Of the compilers I listed above, gcc and VC2005 are both freeware.
Borland also do a couple of freeware compilers. See also Digital Mars,
MinGW, lcc, and Pacific C. I suppose there's also lcc-win32, but I tried
to get it earlier today and failed completely so I suppose it's no longer
available.

This is wrong.
Ah, I was mistaken in my supposition? I do apologise.
virginia.edu is down TODAY.
Fine.
An alternative site is:

http://www.q-software-solutions.de
That told me "bad gateway".
I can't GUARANTEE 100% availibity and you should know perfectly well
that the compiler IS AVAILABLE!!!
Except for me, apparently.
Dammed lies!
Careful with that word, sirrah. If the compiler were available, I'd have
been able to download it, right?

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #15

P: n/a
jacob navia said:
Keith Thompson wrote:
>jacob navia <ja***@jacob.remcomp.frwrites:
>>>Richard Heathfield wrote:

[...]
>>>>Here's a small source file, which should show up the overhead of
various compilers quite well:
#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}
Here are the executable image sizes, in bytes (implementations with
"C++" in their title were invoked in C mode!):
gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760
I tried to download lcc-win32 for comparison purposes, but the main
site's download link was bad, and the backup site screamed "bad
gateway" at me, so I guess that comparison will have to wait for
some other day.
Yes, virginia.edu is down

My data point is
lcc-win32 3104 bytes

compilation options
lc -O thello.c -s

But a more realistic example is:
#include <stdio.h>
int main(void)
{
printf("Hello world");
return 0;
}

This produces a code of 42 283 bytes (statically linked libc)
With dynamically linked libc we go down to 8152 bytes.

But that's not a useful comparison unless you have sizes for *the same
program* for other compilers.

Heathfield's sample used puts. Puts is MUCH smaller than printf OF COURSE.
Yes, of course it is, and with good reason. What I was trying to demonstrate
was the baseline sizes of executables under various compilers. I was not
trying to compare printf implementations. puts was neither here nor there,
since it's a trivial loop, a few bytes of object code at most.

What might prove interesting is to define a series of programs of increasing
complexity, measuring their sizes on a variety of implementations, and
graphing them together.
I just showed a more realistical example.
Why is printf more realistic than puts?
I just showed a more realistical example. Even with all printf, 8K
is very good in Heathfield's list. Using puts() I am the smallest.
Except that all my figures were for statically linked programs, so your
figure is actually 42KB, which is in the worse half of the list.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #16

P: n/a
On Tue, 2006-10-03 at 09:16 +0000, Richard Heathfield wrote:
>

Here are the executable image sizes, in bytes (implementations with "C
++" in
their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760
I tried with gcc 4.1.1 (on Linux) and the executable size was 4710. It
was a little lower when I did it without all the pedantic flags set:
4694.

I'd consider that a reason for you to upgrade. :-)

--
Andrew Poelstra <http://www.wpsoftware.net/projects/>

Oct 3 '06 #17

P: n/a
Andrew Poelstra said:
On Tue, 2006-10-03 at 09:16 +0000, Richard Heathfield wrote:
>>

Here are the executable image sizes, in bytes (implementations with "C
++" in
their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760

I tried with gcc 4.1.1 (on Linux) and the executable size was 4710. It
was a little lower when I did it without all the pedantic flags set:
4694.
Oh, if I messed about with flags, I could get it down a bit. Just adding -O
cuts out 60% of the flab. strip knocks it down to 3088, which is even
slimmer than yours. (You don't say if you used strip.)
I'd consider that a reason for you to upgrade. :-)
Nah. It ain't broke, and it's quick enough, and it doesn't pretend to be
something it isn't, so I'll leave it as it is for now.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #18

P: n/a
Richard Heathfield wrote:
mistral said:

>>Does Visual C++ 2005 Express Edition produce small, compact C
executables?


Let's find out.
>
Here's a small source file, which should show up the overhead of various
compilers quite well:

#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}

Here are the executable image sizes, in bytes (implementations with "C++" in
their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760
Here are some others:

Digital Mars 40,476
Open Watcom 25,600
Pelles C 14,848
lcc-win32 9,680

lcc-win32 produced the smallest executable, but had the slowest
compile and execution times.
Oct 3 '06 #19

P: n/a
John Smith wrote:
Richard Heathfield wrote:
>mistral said:

>>Does Visual C++ 2005 Express Edition produce small, compact C
executables?

Let's find out.

>>
Here's a small source file, which should show up the overhead of
various compilers quite well:

#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}

Here are the executable image sizes, in bytes (implementations with
"C++" in their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760


Here are some others:

Digital Mars 40,476
Open Watcom 25,600
Pelles C 14,848
lcc-win32 9,680

lcc-win32 produced the smallest executable, but had the slowest compile
and execution times.
Excuse me but the compile time is 90ms in my machine, almost
at the measuring level!

And for printing a short character string I had the slowest time?????

This is just a call to the OS!!!

Besides, in normal programs I have at least 5 times the compilation
speed of gcc, and about the same than MSVC (latest versions)

jacob
Oct 3 '06 #20

P: n/a
jacob navia said:
John Smith wrote:
>Richard Heathfield wrote:
>>mistral said:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?

Let's find out.

>>>
Here's a small source file, which should show up the overhead of
various compilers quite well:

#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}

Here are the executable image sizes, in bytes (implementations with
"C++" in their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760


Here are some others:

Digital Mars 40,476
Open Watcom 25,600
Pelles C 14,848
lcc-win32 9,680

lcc-win32 produced the smallest executable, but had the slowest compile
and execution times.

Excuse me but the compile time is 90ms in my machine, almost
at the measuring level!

And for printing a short character string I had the slowest time?????
Are you calling /him/ a liar, too?
This is just a call to the OS!!!
Bright people will understand that without you telling them. So who are you
trying to persuade? Idiots? Forget it. Idiots Don't Listen To Bright
People. (But why am I telling you?)

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #21

P: n/a
jacob navia wrote:
John Smith wrote:
>Richard Heathfield wrote:
>>mistral said:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?


Let's find out.


>>>
Here's a small source file, which should show up the overhead of
various compilers quite well:

#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}

Here are the executable image sizes, in bytes (implementations with
"C++" in their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760

Here are some others:

Digital Mars 40,476
Open Watcom 25,600
Pelles C 14,848
lcc-win32 9,680

lcc-win32 produced the smallest executable, but had the slowest
compile and execution times.


Excuse me but the compile time is 90ms in my machine, almost
at the measuring level!
I generally write and test my hobby C code with several free
compilers, including those above. Sorry, but it has been my
experience over a period of several years that lcc-win32 is
consistently the slowest. I wonder what the experience of others
has been.

JS
>
And for printing a short character string I had the slowest time?????

This is just a call to the OS!!!

Besides, in normal programs I have at least 5 times the compilation
speed of gcc, and about the same than MSVC (latest versions)

jacob
Oct 3 '06 #22

P: n/a
Richard Heathfield wrote:

Here are the executable image sizes, in bytes (implementations with
"C++" in their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760

The old Turbo C, compiled from the IDE under WinXP comes in at 6427.
With the command-line compiler, it's 3928.


Brian

Oct 3 '06 #23

P: n/a
jacob navia wrote:

[snip]
>
This is wrong. virginia.edu is down TODAY.

An alternative site is:

http://www.q-software-solutions.de
The page at http://www.cs.virginia.edu/~lcc-win32/ links to
ftp://ftp.cs.virginia.edu/pub/lcc-win32/lccwin32.exe, and it seems that
the ftp site has been down for months, at least.

However, it does seem possible to grab the installation program off of
the the http server,
http://www.cs.virginia.edu/~lcc-win32/lccwin32.exe, although there are
no hyperlinks to this.
>
Oct 3 '06 #24

P: n/a
John Smith wrote:
>
I generally write and test my hobby C code with several free compilers,
including those above. Sorry, but it has been my experience over a
period of several years that lcc-win32 is consistently the slowest. I
wonder what the experience of others has been.

OK Compiling 10MB of egcs version 2. This is a *real* test

lcc-win32 15 seconds
MSVC 6.0 34.3 seconds
gcc 60 seconds

Maybe you mean the compiled code is slower? That could be in
many situations true, since gcc and msvc do better optimizations,
but in compilation speed and size of the executable...
Executable size:

lcc-win32 1 756 192
gcc 1 965 864
MSVC 1 703 936

wc *.c
318007 1243947 9654182 total
lines words bytes
Oct 3 '06 #25

P: n/a

Default User писал(а):
Richard Heathfield wrote:
Here are the executable image sizes, in bytes (implementations with
"C++" in their title were invoked in C mode!):
gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760
The old Turbo C, compiled from the IDE under WinXP comes in at 6427.
With the command-line compiler, it's 3928.
Brian
--------

The primary task is compile small and fast win32 executables, equally.
(not 16bit!) Compiler need be handy even for novices.

mistral

Oct 3 '06 #26

P: n/a
mistral said:
>Richard Heathfield wrote:
>gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760

The primary task is compile small and fast win32 executables, equally.
(not 16bit!) Compiler need be handy even for novices.
Then, looking at that list and excluding those that don't qualify, your best
bet would appear to be Visual C++ 6.0 or Visual C++ 2005 Express Edition.
You can probably get the file size down further by playing with
optimisation settings. Another way to reduce storage requirements is to
make copious use of DLLs, although these bring their own problems to the
table.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #27

P: n/a
jacob navia wrote:
mistral wrote:
>Does Visual C++ 2005 Express Edition produce small, compact C
executables? Or there is another C compilers that do this better?

lcc-win32 produces (sometimes) smaller executables. The only
optimizations lcc-win32 does actually, are optimizations that delete
instructions, so the code is quite compact. The size of the libraries is
smaller too. Custom implementations could be smaller, if you
have a budget for them.
Do you have test data? VC(++)2005 seemed to do a rather good job
w.r.t. optimising when I evaluated it. For VC(++)6, I do not doubt
your claim.
Cheers
Michael
--
E-Mail: Mine is an /at/ gmx /dot/ de address.
Oct 3 '06 #28

P: n/a
Richard Heathfield wrote:
>
mistral said:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?

Let's find out.

<later>

Well, it depends on what you mean by "small". :-)
Or there is another C compilers that do this better?

Here's a small source file, which should show up the overhead of various
compilers quite well:

#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}

Here are the executable image sizes, in bytes (implementations with "C++" in
their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
gcc 3.21 for DOS/DJGPP 72820
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Turbo C 2.01 7598
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760
Some of those cases use a shared library, and just don't load any
library code.
>
I tried to download lcc-win32 for comparison purposes, but the main site's
download link was bad, and the backup site screamed "bad gateway" at me, so
I guess that comparison will have to wait for some other day.
Using gcc 3.2.1 -O1 on DJGPP (under dos/w98) I get 72820. The
compiled module itself is 51 bytes of code in a 2632 long file.

DJGPP has heavy startup overhead, to make things look much like
*nix.

Using tc2.01, the exe is 7598, and the .obj is 545.

--
Some informative links:
<news:news.announce.newusers
<http://www.geocities.com/nnqweb/>
<http://www.catb.org/~esr/faqs/smart-questions.html>
<http://www.caliburn.nl/topposting.html>
<http://www.netmeister.org/news/learn2quote.html>
<http://cfaj.freeshell.org/google/>
Oct 3 '06 #29

P: n/a
Michael Mair wrote:
jacob navia wrote:
>mistral wrote:
>>Does Visual C++ 2005 Express Edition produce small, compact C
executables? Or there is another C compilers that do this better?


lcc-win32 produces (sometimes) smaller executables. The only
optimizations lcc-win32 does actually, are optimizations that delete
instructions, so the code is quite compact. The size of the libraries is
smaller too. Custom implementations could be smaller, if you
have a budget for them.


Do you have test data? VC(++)2005 seemed to do a rather good job
w.r.t. optimising when I evaluated it. For VC(++)6, I do not doubt
your claim.
Cheers
Michael
Yes, VC++ 7.0 is much better that the earlier versions.
Actually, with a real world program, the
difference has shrunk to a few percentage.

When compiling the source code of the old gcc (egcx) compiler
(10 MB of C code) I have the following results:

lcc-win32 1 756 192
gcc 1 965 864
MSVC 1 703 936

So you can see that the difference is not significative,
53K from around 1.8MB.
Oct 3 '06 #30

P: n/a
jacob navia wrote:
Richard Heathfield wrote:
>mistral said:
>>Richard Heathfield ?????(?):
mistral said:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?

Let's find out.

<later>

Well, it depends on what you mean by "small". :-)

Or there is another C compilers that do this better?

Here's a small source file, which should show up the overhead of
various compilers quite well:
<snip: comparisons>
>>>>
I tried to download lcc-win32 for comparison purposes, but the main
site's download link was bad, and the backup site screamed "bad
gateway"
at me, so I guess that comparison will have to wait for some other day.
<snip>
>Of the compilers I listed above, gcc and VC2005 are both freeware.
Borland also do a couple of freeware compilers. See also Digital Mars,
MinGW, lcc, and Pacific C. I suppose there's also lcc-win32, but I
tried to get it earlier today and failed completely so I suppose it's
no longer available.

This is wrong. virginia.edu is down TODAY.
Um, have you actually tried to download it from there?
I never succeeded in the last _weeks_.
So, the ftp may well be down today (it can be pinged, but I
suspect that whatever was in ftp...../public/foo now can be found
under either www..../foo or www..../~foo) but this does not exclude
having been down for a while.
An alternative site is:

http://www.q-software-solutions.de
This works.

I can't GUARANTEE 100% availibity and you should know perfectly well
that the compiler IS AVAILABLE!!!
Nobody demands that. Richard quite reasonably pointed out that he
could not download it from either original site or mirror -- so what
should he do?

Dammed lies!
Easy there.
-Michael
--
E-Mail: Mine is an /at/ gmx /dot/ de address.
Oct 3 '06 #31

P: n/a
jacob navia wrote:
Michael Mair wrote:
>jacob navia wrote:
>>mistral wrote:

Does Visual C++ 2005 Express Edition produce small, compact C
executables? Or there is another C compilers that do this better?

lcc-win32 produces (sometimes) smaller executables. The only
optimizations lcc-win32 does actually, are optimizations that delete
instructions, so the code is quite compact. The size of the libraries is
smaller too. Custom implementations could be smaller, if you
have a budget for them.

Do you have test data? VC(++)2005 seemed to do a rather good job
w.r.t. optimising when I evaluated it. For VC(++)6, I do not doubt
your claim.

Yes, VC++ 7.0 is much better that the earlier versions.
Actually, with a real world program, the
difference has shrunk to a few percentage.

When compiling the source code of the old gcc (egcx) compiler
(10 MB of C code) I have the following results:

lcc-win32 1 756 192
gcc 1 965 864
MSVC 1 703 936

So you can see that the difference is not significative,
53K from around 1.8MB.
Thank you.
How does lcc-win32 fare when compiling itself in comparison
with the others?

Cheers
Michael
--
E-Mail: Mine is an /at/ gmx /dot/ de address.
Oct 3 '06 #32

P: n/a

CBFalconer wrote:
Richard Heathfield wrote:
mistral said:
Does Visual C++ 2005 Express Edition produce small, compact C
executables?
Let's find out.
<later>
Well, it depends on what you mean by "small". :-)
Or there is another C compilers that do this better?

Here's a small source file, which should show up the overhead of various
compilers quite well:

#include <stdio.h>
int main(void)
{
puts("Hello world");
return 0;
}
Here are the executable image sizes, in bytes (implementations with "C++" in
their title were invoked in C mode!):
gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
gcc 3.21 for DOS/DJGPP 72820
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Turbo C 2.01 7598
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760
Some of those cases use a shared library, and just don't load any
library code.
I tried to download lcc-win32 for comparison purposes, but the main site's
download link was bad, and the backup site screamed "bad gateway" at me, so
I guess that comparison will have to wait for some other day.
Using gcc 3.2.1 -O1 on DJGPP (under dos/w98) I get 72820. The
compiled module itself is 51 bytes of code in a 2632 long file.
DJGPP has heavy startup overhead, to make things look much like
*nix.
Using tc2.01, the exe is 7598, and the .obj is 545.
--------------------

what is system requirements for MS Visual C++ 6.0? Visual C++ 2005
Express Edition is near 500MB. I can no assign dedicated comp for this
Visual C++ 6.0..

mistral

Oct 3 '06 #33

P: n/a
mistral said:
what is system requirements for MS Visual C++ 6.0?
Not vast, especially if you don't install all the guff. But this is really a
question for a Microsoft group.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #34

P: n/a
mistral wrote:
>
what is system requirements for MS Visual C++ 6.0? Visual C++ 2005
Express Edition is near 500MB. I can no assign dedicated comp for this
Visual C++ 6.0..

mistral
500 MB!!!!
Well, the whole IDE of lcc-win32, with debugger, project management
software metrics, what have you, makes only 650K. The whole system
is 5MB compressed, around 20MB decompressed.

But you are just complaining for NOTHING!

I installed at a customer site Microsoft 2005 Professional
edition and it is 3GB. Takes a whole afternoon of
inserting CDs
jacob

Oct 3 '06 #35

P: n/a
Michael Mair wrote:
How does lcc-win32 fare when compiling itself in comparison
with the others?
Fairly fast, but MSVC beats me in generated code speed.
Actually the best compilers are:

Intel compiler: Best x86 compiler generator in the world.
No other compiler beats that in performance

MSVC. Close to Intel, very good generator.

gcc. It has never got to the MSVC performance.

lcc-win32: Fast compilation speed but the generated code is
slower by 25%-35% from the best compilers.
Oct 3 '06 #36

P: n/a
Michael Mair wrote:
jacob navia wrote:
>Richard Heathfield wrote:
>>mistral said:

Richard Heathfield ?????(?):

mistral said:
>
>Does Visual C++ 2005 Express Edition produce small, compact C
>executables?
>
>
Let's find out.
>
<later>
>
Well, it depends on what you mean by "small". :-)
>
>Or there is another C compilers that do this better?
>
>
Here's a small source file, which should show up the overhead of
various compilers quite well:
>
<snip: comparisons>
>>>>>
I tried to download lcc-win32 for comparison purposes, but the main
site's download link was bad, and the backup site screamed "bad
gateway"
at me, so I guess that comparison will have to wait for some other
day.

<snip>
>>Of the compilers I listed above, gcc and VC2005 are both freeware.
Borland also do a couple of freeware compilers. See also Digital
Mars, MinGW, lcc, and Pacific C. I suppose there's also lcc-win32,
but I tried to get it earlier today and failed completely so I
suppose it's no longer available.


This is wrong. virginia.edu is down TODAY.


Um, have you actually tried to download it from there?
I never succeeded in the last _weeks_.
So, the ftp may well be down today (it can be pinged, but I
suspect that whatever was in ftp...../public/foo now can be found
under either www..../foo or www..../~foo) but this does not exclude
having been down for a while.
>An alternative site is:

http://www.q-software-solutions.de


This works.

>I can't GUARANTEE 100% availibity and you should know perfectly well
that the compiler IS AVAILABLE!!!


Nobody demands that. Richard quite reasonably pointed out that he
could not download it from either original site or mirror -- so what
should he do?

He said

"I suppose it is no longer available"

He knows perfectly well that I am posting here every day.
Just a question would have sufficed to explain what was
happening but no, he writes that my compiler system

"is no longer available".

That is bad faith really!
Oct 3 '06 #37

P: n/a
Somebody dares to compare with TinyCC?
http://fabrice.bellard.free.fr/tcc/
It seems to be rater quiet on the web site, but for small hobby C programs,
TinyCC _is_ worth every penny!
Andreas

"mistral" <po*******@softhome.netschrieb im Newsbeitrag
news:11*********************@i3g2000cwc.googlegrou ps.com...
Does Visual C++ 2005 Express Edition produce small, compact C
executables?
Or there is another C compilers that do this better?

m.

Oct 3 '06 #38

P: n/a
[lcc-win32.exe is now once more available from its #2 site]

jacob navia said:
He said

"I suppose it is no longer available"
Right. My reasoning at the time was as follows: "It was available once. It
appears not to be available right now. Therefore, I suppose it is no longer
available." So what I wrote was consistent with my beliefs at the time.
That it might become available again in the future, even the near future,
was irrelevant.
He knows perfectly well that I am posting here every day.
Again, irrelevant. You are not posting your /compiler/ here every day (thank
heaven).
Just a question would have sufficed to explain what was
happening but no, he writes that my compiler system

"is no longer available".
No, sir, that is a selective and misleading quotation. I wrote: "I suppose
it is no longer available", and it is true that I supposed that, at the
time I wrote it. I just tried to download it again, it being easily twelve
hours since the last time I tried, and I just got a 0-byte file. But the
backup site now appears to be up again, as a result of which I have now
managed to download the software. So I suppose it is once more available.

That is bad faith really!
No, you just need to learn to read what's written, rather than what you're
expecting to read.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #39

P: n/a

Richard Heathfield wrote:
Here are the executable image sizes, in bytes (implementations with "C++" in
their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760

While I've not checked all of these, it's likely that all of the above
with large executables were doing static links of the CRT. VC++05 with
-MD, for example, generates a 5632 byte executable.

Oct 3 '06 #40

P: n/a
ro***********@yahoo.com said:
>
Richard Heathfield wrote:
>Here are the executable image sizes, in bytes (implementations with "C++"
in their title were invoked in C mode!):

gcc 2.81 for DOS: 92403
Visual C++ 5.0: 81408
Borland C++ 5.3: 55296
Borland C++ 5.6: 50688
Visual C++ 2005 Express Edition: 40960
gcc 2.95.3 for Linux: 34686
Visual C++ 6.0: 28672
Visual C++ 1.5: 5699
Turbo C++ 1.01: 4760


While I've not checked all of these, it's likely that all of the above
with large executables were doing static links of the CRT.
That was deliberate. In each case, I just banged out a command line from
memory, making no particular attempt to minimise the size. I was after the
default picture, so to speak.

I was surprised at just how much the Linux gcc version got crunched - even
with static linking - when I told gcc I cared about size. And then
stripping the binary yielded even more savings.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #41

P: n/a

Richard Heathfield wrote:
While I've not checked all of these, it's likely that all of the above
with large executables were doing static links of the CRT.

That was deliberate. In each case, I just banged out a command line from
memory, making no particular attempt to minimise the size. I was after the
default picture, so to speak.

Although the OP did ask specifically about small executables. I don't
see any reason to assume that the default options for a compiler would
be a good test of that (no more than I'd expect fastest exectable to be
the default). If there is a good default option for a compiler it
would probably be generated code with the least amount of surprise. So
statically linked CRT, no use of "new" instructions, etc.

Oct 3 '06 #42

P: n/a
ro***********@yahoo.com said:
Although the OP did ask specifically about small executables.
Yeah, I know, but considering OP is probably newbie, I didn't want to
involve them in remembering deep switch syntax.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 3 '06 #43

P: n/a
On 2006-10-03, jacob navia <ja***@jacob.remcomp.frwrote:
Michael Mair wrote:
>How does lcc-win32 fare when compiling itself in comparison
with the others?

Fairly fast, but MSVC beats me in generated code speed.
Actually the best compilers are:

Intel compiler: Best x86 compiler generator in the world.
No other compiler beats that in performance
This is not true. Actually the Pathscale (and sometimes the PGI)
compiler is faster (on Linux and AMD64, they have hired a software engineer
to port the compiler to Windows 64 last year).

AFAIK the Windows Version of the PGI compiler is between Intel (sometimes
faster than Intel AFAIK) and MSVC performancewise.
MSVC. Close to Intel, very good generator.

gcc. It has never got to the MSVC performance.

lcc-win32: Fast compilation speed but the generated code is
slower by 25%-35% from the best compilers.

--
Roland Csaszar ----------- \\\ /// -------------- +43 316 495 2129
Software Development ------ \\\ /// ----------- http://www.knapp.com
KNAPP Logistics Automation - \\V// - mailto:ro************@knapp.com
Oct 4 '06 #44

P: n/a
Richard Heathfield <in*****@invalid.invalidwrites:
>
Of the compilers I listed above, gcc and VC2005 are both freeware. Borland
also do a couple of freeware compilers. See also Digital Mars, MinGW, lcc,
and Pacific C. I suppose there's also lcc-win32, but I tried to get it
earlier today and failed completely so I suppose it's no longer available.
You are wrong about that, it's all too well available usually.

Not that it matters here's the size with of the program with lcc-win32
dummy_hello.exe 3104 Bytes

Gcc makes here:
8819 bytes out of it

Now what have we proved or won now?

Friedrich

--
Please remove just-for-news- to reply via e-mail.
Oct 5 '06 #45

P: n/a
Richard Heathfield <in*****@invalid.invalidwrites:
Except that all my figures were for statically linked programs, so your
figure is actually 42KB, which is in the worse half of the list.
So what? You did not mention it anywhere.

Friedrich
--
Please remove just-for-news- to reply via e-mail.
Oct 5 '06 #46

This discussion thread is closed

Replies have been disabled for this discussion.