
Lazarus - exe obluda
Zdravím.
Dam nový projekt, uložít a sestavit.
Uděla mi to skoro 20 MB exe obludu.
Kde je problem?
Zdravím.
Dam nový projekt, uložít a sestavit.
Uděla mi to skoro 20 MB exe obludu.
Kde je problem?
Předmět | Autor | Datum |
---|---|---|
A preco pouzivas hovadiny, pouzi ciste c++ a budes mat 32kB exe. Visual C bolo aj zdarma.
P.S. ja o… MM.. 21.05.2017 18:33 |
MM.. | |
Pokud ti nevadi, ze pak budes mit v systemu 5+ verzi C++ Runtime, k tomu x verzi .NET runtime...
Oso… Jan Fiala 21.05.2017 19:25 |
Jan Fiala | |
Tak viem urobit aj 32kB bez runtime:) MM.. 22.05.2017 09:00 |
MM.. | |
Samozrejme, ze to jde, pokud delas nejakou drobnost, kterou neplanujes nejak moc do budoucna rozvije… nový Jan Fiala 22.05.2017 09:36 |
Jan Fiala | |
Zmenšení výsledné aplikace v Lazarusu jde velmi snadno až 26x, nebo na 3,8% původní velikosti, tj. z… nový Urso 17.06.2018 09:23 |
Urso | |
Komprimátory jako UPX bych dnes už nepoužíval. Mají jednu obrovskou nevýhodu, pokud pominu to, že js… nový Jan Fiala 17.06.2018 11:48 |
Jan Fiala | |
Po více než roce už to tazatel asi vyřešil. poslední host 18.06.2018 08:55 |
host | |
Hlavní problém je v tom, že Lazarus neumí dynamické knihovny (jako u Delpji *.BPL), vše je staticky… nový Rce 17.06.2018 23:48 |
Rce |
Zpět do poradny Odpovědět na původní otázku Nahoru
A preco pouzivas hovadiny, pouzi ciste c++ a budes mat 32kB exe. Visual C bolo aj zdarma.
P.S. ja osobne vo VC++ nastavujem linkeru nech pouziva staticaly linked library lebo ked tam nastavis dynamicaly linked dll, tak budes potrebovat nainstalene prislusne visual C runtime k tomu exe
P.S.2. ale vyhoda externeho runtime je ze sa to moze zaplatovat nezavisle, takze niekedy je lepsie to nechat tak a nainstalit visual c runtime.
Pokud ti nevadi, ze pak budes mit v systemu 5+ verzi C++ Runtime, k tomu x verzi .NET runtime...
Osobne mam radeji nekolika MB EXE, ktery muzu vzit kamkoliv, spustit a vim ze pobezi nez 32kB EXE, ke kteremu musim doinstalovat desítky MB runtime.
Tak viem urobit aj 32kB bez runtime:)
Samozrejme, ze to jde, pokud delas nejakou drobnost, kterou neplanujes nejak moc do budoucna rozvijet.
Zmenšení výsledné aplikace v Lazarusu jde velmi snadno až 26x, nebo na 3,8% původní velikosti, tj. z 22 MB to udělá 0,75 MB! Nejlepší způsob je nastavit to v grafickém prostředí. O něco horší postup je použití strip a pak upx. Podrobné a názorné informace jak zmenšit kód v LAZARUS 1.6.4.
Komprimátory jako UPX bych dnes už nepoužíval. Mají jednu obrovskou nevýhodu, pokud pominu to, že jsou často takto komprimované programy detekovány jako škodlivý kód.
Normální program se do paměti nenahraje celý, je jen jeho potřebná část. Pak se dotahuje jen, co je třeba.
Pokud použiješ UPX, musí se program do paměti rozbalit, abys ho mohl spustit, takže ve výsledku zabere mnohem víc operační paměti než nezpakovaný program. Úspora je pouze místo na disku.
Po více než roce už to tazatel asi vyřešil.
Hlavní problém je v tom, že Lazarus neumí dynamické knihovny (jako u Delpji *.BPL), vše je staticky přilinkované. Netřeba se děsit, jak budeš zvětšovat (zdrojový) program, pak již bude runtime narůstat jen velmi málo.