hei!
Tein pienen asiakasrekisteri-ohjelman lazaruksella linux alustalla.
Ajettavan ohjelman koko n.25M.
Ohjelma kuitenkin tarvittiin win alustalle, jonne siirrettynä ja käännettynä on n.
15M
Varsinkin linuksi ajettava on HUGE.
Voiko noille kokojutuille tehdä jotain?
t.kaitsu
Oikeastaan ei. Paitsi jos jaksat suoraan assemblya vääntää. Tietenkin voit pyrkiä karsimaan koodista turhia kohtia, vertailla erilaisten toteutuksien kokoa, ynnä muuta pientä puuhastelua.
Selailin ajettavaa koodia, siellä on siis pilvinpimein tekstiä ym. muuta.
Onko ne tarkoitettu mille ? (Debuggerille?); Mielestäni olen disabloinut debuggaus jutut valmiista käännöksestä.
UPX:llä voi pakata suoritettavia tiedostoja. Se tukee ainakin joitain Linuxin binäärejä. http://upx.sourceforge.net/
OK!
Kiitos vinkistä. Kokeillaan.
Silti tuntuu että FPC ei ole vielä ihan optimoinnin kärjessä.
Onpahan tuosta sorsat olemassa, josko aloittaisi perehtymisen siihen.
Jokotai, älä vastaa, jos et oikeasti tiedä.
Tiedostojen suurta kokoa käsitellään Lazaruksen FAQ:ssa. Siellä on kerrottu erilaisista pienentämismahdollisuuksista, myös UPX mainitaan.
toimiiko Metabolix linkin takaa löytyvä komento linuksissa.
Olin oivaltani windows ohjeita sieltä?
Just type "strip --strip-all <your executable file with path>" on the command line
Eikös "type on the command line"-muotoset ohjeet yleensä oo just Linuxille? :)
Ei vaan, kyllähän Linuxista strip löytyy.
WOW!
Ajoin strip jutun ja 25M pieneni 4.4M .
KIITOS KAIKILLE KANTAA OTTANEILLE.
Avaa project options ikkuna.
Compiler Options -> Linking:
Siellä on 2 kohtaa joihin laitat raksin:
- Strip Symbols From Executable
- Use external gdb debug symbols file
Sitten vielä raksi alla olevaan "Use these compiler options as default for new projects"
Tuo tekee sen että se kirjottaa debug tiedot erilliseen tiedostoon eikä .exe sisälle. Mun ohjelmat pienenee jopa alle 2 megaan.
Sen jälkeen samassa ikkunassa kohdassa Code generation on valinnat jos vielä tarvitsee kokoa pudottaa:
Level 0-3 optimization
Uncertain Optimizations
smaller rather than faster
Ja tietty kun kaiken tuon jälkeen ajaa UPX niin exe:n koko voi pudota puoleen megaan.
Aihe on jo aika vanha, joten et voi enää vastata siihen.