Florian Köberle wrote:

Alexander Todorov schrieb:

Hi all,
I've noticed that Lazarus produces very big binary files (.exe). I was
thinking that it was linking all the gui stuff into the executable but
maybe thing are not so simple as I think. In one of the previous
threads someone mentioned that Lazarus' dialogs are not like Delphi's
(i.e. resource files).

Can some one point me to where the answer is! How does Lazarus compile
GUI applications compared to Delphi, (MS Visual Studio, GCC, Other)
and why are they so big?

N.B. I have not tested size issues with console applications or dlls.

The first problem ist that all the debbuger Information are included in the resulting file and not in an separate file. Call strip.exe with you program name as argument to remove it.

The second reason why the files are so big are the lazarus units witch are compiled with disabled smartlinking. I think it is so because the used linker can link only debuginformation into the file when smartlinking is disabled. The final problem ist that lazarus is not optimised for smartlinking, but that is only the second step. First you need units that are compiled for smartlinking.

I did some rough tests the other day and the smallest I could get an executable that included the forms unit was just under 2MB with everything stripped and smartlinking on the application, optimized code for size, etc. Of course I only got limited results out of smartlinking on the app, but it did affect the size.

But, by the same token, no runtimes were needed! Unless you count libpixbuf ;-)

This discussion comes up every so often... More often lately due to more and more people using Lazarus. I recall when I did Delphi 2 programming hearing the same thing over and over as well.
-Tony

_________________________________________________________________
    To unsubscribe: mail [EMAIL PROTECTED] with
               "unsubscribe" as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives

Reply via email to