Weight of simple desktop app

Hi
I was reading a while ago that Xojo apps weight “a lot” since they are 100% true standalone EXE’s (not like VB.net or VB6) and for this reason, for not having any dependancies they carry all the weight on their own.
So I was wondering how much is a simple “hello world” compiled with Xojo for Windows
(With VB6 is just a few Kbytes to put things in prspective)

Regards

The reason a Xojo app is large is because it does not make static linking and carries entire dynamic libraries used by your base program, not just the needed parts. The “hello world” size varies with Xojo version and target OS.

Is there a way to make the app carry only the libraries needed ?

The compiler only puts in the libraries it needs. It doesn’t put everything in.

You may have outdated informations.

  • Download Xojo,
  • create your Hello World
  • save it in a folder
  • Run it (Ctrl-R or green right point arrow on top of the IDE)
  • Do not quit the program, and open the folder where you saved the source
  • Open Debughello folder

Inside, you will find a 2,507 Kb EXE … and a folder called Debughello Libs which contains the framework. Now, the total weigh 5.52 MB. Before you scream, remember that today’s computers have huge hard drives, and often pictures are just as big…

This is not the real problem about the size. The problem is that if you have, for example a shared library with 400 functions and 2Mb size, and you will use just one function from that lib, say 1kb, the entire lib need to be packed together with your app.

Somehow, I doubt the OP intends to create couple lines apps. Developing larger apps makes the size of the libraries negligible in the total size of the files.

Will not question about what people will do. :slight_smile: Not criticizing, just explaining the facts some just don’t understand until detailed. :wink:

[quote]total weigh 5.52 MB[/quote] Ouch…

The LLVM compiler might* change the way code is included/excluded. It might* be a game-changer.

*probably will, but nobody can make any promises

I was just wondering…coming from VB6 where such app would weight a few Kb I wanted to know the differences with Xojo and I don’t have the “professional” version so I cannot compile, otherwise I wouldnt even asked in the first place.

Compiled FreeBasic “Hello World!” prog is 24kb

I was initially shocked by the size of RB/Xojo programs, until I compared it to the free space remaining on my hard drive and the fact that the 10K VB program required 200MB of runtime to function. It’s apples and oranges. Neither is significant any more.

Actually, you can. When you run from the IDE, it actually does a full compile which you can examine while it’s running. (It is deleted when it quits.) So you can get a pretty good idea of what the actual EXE will look like if you built it.

You are missing the 9.8MB runtime that is required for VB6 executables in your sticker shock. I just downloaded it from Microsoft to see what it currently is.

Also worth noting is that my company has a few VB6 apps still around and they flat out will not run on 64bit as many of the controls can not run under WoW64. These are being migrated.

You beat me, Bob lol!

Yep, the infamous Msvbvm60.dll file required for any VB6 app to run at all is almost 1.5MB by itself, so it really ends up being 6 on one and a half-dozen on the other.

Yep but VB6 is long dead.

Will be interesting to see what sort of size the IOS binaries when we Xojo IOS arrives. :slight_smile:

do Windows desktop Xojo apps have to carry that lib folder all the time ? Even the simplest apps ?

I just gave you a way to weigh the compiled debug program, which is almost the same as the build (5.8 MB)

Yes.

Quite compact, but Is any computer today indigent enough to require such small executables ? I remember the pocket Atari from the eighties that may have enjoyed that (did not run Windows though) but TODAY ?

Actually, this discussion is rather irrelevant in terms of why and how one may use Xojo to create programs, and which programs. As a professional, I need foremost a powerful and reliable language. I must supply apps that will not break down or suffer random crashes because that would be the end of my business. I need the best possible support in terms of documentation and counsel to carry on the task of generating efficient code. Xojo support is exemplary, both in terms of documentation (thank you Paul :)) and actual community support, which I find to be outstanding here.

Now, for me, a few megabytes are peanuts.