Old question big binaries lazarus / 8-Other ---------------------------------------------------------------------- LazaruX · 2007-10-29 17:10 Since I discovered lazarus I also discovered that the binaries are soo big, I also read a lot of questions here in the forum about the argument, where you all giva an answer to this question. I have also read this FAQ: http://wiki.lazarus.freepascal.org/Lazarus_Faq#Why_are_the_generated_b inaries_so_big.3F What I am asking is: A -the text of the link says: QuoteThe binaries are big because they include a lot of debug information necessary for using gdb (GNU Debugger). 1 but Windows does not use gfb or does it? 2 I know you can debug a program while making it, but after when the binariy is created. Why do you need to debugg it there? Are you using DEBUG.EXE? 3 I will debug my code, not the binary, or not? B I have also read from many users that using strip or UPX is not good? Does this mean that the executble will loose stability when using those 2 programs? Thanks ---------------------------------------------------------------------- antonio · 2007-10-29 17:21 Quote from: "BPsoftware" B I have also read from many users that using strip or UPX is not good? Does this mean that the executble will loose stability when using those 2 programs? Not for strip.exe, AFAIK. ---------------------------------------------------------------------- felipemdc · 2007-10-29 20:22 Quote from: "BPsoftware"1 but Windows does not use gfb or does it? Lazarus uses gdb under Windows too. Quote2 I know you can debug a program while making it, but after when the binariy is created. Why do you need to debugg it there? Are you using DEBUG.EXE? What debug.exe are you talking about? A lazarus distribution includes no such file. Quote3 I will debug my code, not the binary, or not? Maybe you should read this: http://en.wikipedia.org/wiki/Debugger To understand what a debugger does. ---------------------------------------------------------------------- Leledumbo · 2007-10-30 08:50 I don't understand why some people said that using UPX is not good. I'm using it on ALL of my projects and Lazarus itself. I'm running them on a compressed NTFS drive. And what I got is: a smaller program, and a small memory usage. Even with Lazarus fully installed (+GLScene,+PascalScript,+LazColorPalette,+MultiDoc,+PasDoc,+many more), it only eats up 7-10 megs! So, why won't we compress the program as small as we can? I don't know it it's related or not. Does it have anything to do with the LZMA algorithm? I haven't learned how it works. ---------------------------------------------------------------------- Bart · 2007-10-30 09:37 I did a make install on fpc once. IIRC it frequently called UPX on the build executables. So I guess you can trust UPX. I just do a strip --strip-all and a UPX on all binaries I find stable enought to release to the public. Bart ---------------------------------------------------------------------- eric · 2007-10-30 09:51 I did have one Lazarus program which was crippled by UPX - it failed to run, with an error about being unable to load a certain library (I forget the details now). ---------------------------------------------------------------------- Marc · 2007-10-30 10:31 UPX is nothing more than a "virtual" way of getting you exes smaller In reality they aren't, and it doesn't bring any advantage, except that it takes less diskspace. The only reason to use it is maybe on a USB stick. What UPX does isn't magic, it only compresses the exe and uncompresses it when you run it. In some cases this means that it uncompesses the exe to a temp file which is run. So for normal use, it only adds the overhead of uncompressing. ---------------------------------------------------------------------- Almindor · 2007-10-30 11:51 Add to that the fact that on linux it's outright broken because it just puts your file to /tmp This means that if you depend on ParamStr(0) and it's path you're screwed. On windows this is handled much better by UPX so it "just works". UPX is good for SVN commits too ---------------------------------------------------------------------- LazaruX · 2007-10-30 14:21 Thank you for answering all The DEBUG.EXE I mean is the one included in wondows, the old one used in DOS. just type debug in a command prompt. I have read that article sekel meant, understanding some things.  (understanding you can debug the binary) I will now read this http://wiki.lazarus.freepascal.org/Size_Matters trying to understand the upx problems. Thanks again PS. Untiol now I have always used strip and UPX on Windows and never had problems,...