Entwickler-Ecke

Programmierwerkzeuge - Compiler und Debugger-Einstellungen für EXE


Kralle - Mi 27.07.11 13:04
Titel: Compiler und Debugger-Einstellungen für EXE
Hallo,

ich hoffe ich bin hier nicht OT.

Wenn ich in Delphi 2006 ein Programm fertig habe, welche Einstellungen für Compiler und Debuger,
sollte man dann wählen, um eine kleine kompakte Exe zu erhalten?

Wie sieht es mit Kommentarten aus? Sollte man die vorher rauswerfen?

Gruß Heiko


Delphi-Laie - Mi 27.07.11 14:25

OT soll wohl einer einer dieser (mich) abstoßenden Anglizismen in Abkürzung sein. Ich verstehe nicht, warum wir uns nicht auf unsere eigene Sprache besinnen können. Sooo schön ist angelsächsich nun auch wieder nicht, und einen Zeitgeist, dem man womöglich auch noch hinterherzuhecheln hat, kann ich darin auch nicht erkennen.

Zu Deinen Fragen: Kommentare sind irrelevant, deshalb kann man seine(n) Quelltext(e) damit ja auch bis zum Bersten vollstopfen, aber das steht in jedem Anfängerbuch und sehr wahrscheinlich auch etliche Male in diesem Forum. Die Einstellungen für Compiler, Linker und Debugger haben nach meiner Erfahrung keinen, bestenfalls kaum einen Einfluß auf die Größe des Compilates - ganz im Gegensatz zu Freepascal/Lazarus. Spürbar (wesentlich, ja um Größenordnungen!) kleinere Exe-Dateien erhält man hingegen, wenn man ohne die sog. VCL (Visual Component(s) Library) programmiert, dazu gibt es eine Anleitung von Luckie (auf Michael Puffs Internetseite zu finden).


Kralle - Mi 27.07.11 14:43

Moin,

user profile iconDelphi-Laie hat folgendes geschrieben Zum zitierten Posting springen:
OT soll wohl einer einer dieser (mich) abstoßenden Anglizismen in Abkürzung sein. Ich verstehe nicht, warum wir uns nicht auf unsere eigene Sprache besinnen können. Sooo schön ist angelsächsich nun auch wieder nicht, und einen Zeitgeist, dem man womöglich auch noch hinterherzuhecheln hat, kann ich darin auch nicht erkennen.


Ich mag auch keine Anglizismen, aber wir bewegen uns hier halt im WWW und da sind diese noch gegenwärtiger als am Service-Point auf dem Bahnhof :-)

Was sollte man dann Deiner Meinung nach für "OFF Topic" benutzen? Etwa "AdeT" (abseits des eigentlichen Themas) , "oBzT" (ohne Bezug zum Thema)
"NzTdFp" (nicht zum Thema des Forums passend)? Ups, "Forum" geht ja auch nicht, ist ja lateinisch.

Gruß Heiko

P.S. Wir driften ab....

Moderiert von user profile iconMartok: Quote repariert


spawn89 - Mi 27.07.11 14:52

ALT+F11 -> Compiler
Haken bei
- Optimierung an
- bei [Laufzeitfehler] und [Debuggen] alles weg

Rest hängt von deinem Code ab.
Aber Tools wie StripReloc und UPX dürfen genutzt werden!


Delphi-Laie - Mi 27.07.11 15:22

Abseits des Themas z.B., fein, siehst Du, es geht doch, Kralle! Wäre doch ärmlich, wenn wir uns in unserer Muttersprache nicht ausdrücken könnten. www ist übrigens kein Arguement, weil es eine bwz. die "www-Sprache" nicht gibt, Englich übernimmt diese Rolle nur notdürftig und stellvertretend (wie auch in anderen internationalen Bereichen). Die allermeisten Wörter auf dieser Internetseite sind zum Glück ja noch mehr oder weniger deutsch.

user profile iconspawn89 hat folgendes geschrieben Zum zitierten Posting springen:
ALT+F11 -> Compiler
Haken bei
- Optimierung an
- bei [Laufzeitfehler] und [Debuggen] alles weg

Rest hängt von deinem Code ab.
Aber Tools wie StripReloc und UPX dürfen genutzt werden!


Danke für die ersten beiden Punkte! StripReloc kenne ich nicht, und UPX ist m.E. unsinnig (aber dazu gab es ja auch schon etliche Diskussionen).

Edit: Soeben mal mit einenm versionsniedrigen Delphi überprüft: Kein Unterschied! Ich schrieb ja schon oben, daß die Unterschiede bestenfalls gering sind.


jaenicke - Mi 27.07.11 15:53

Das einzige was die Größe der erzeugten ausführbaren Datei massiv beeinflusst sind die Debug-Informationen auf der Seite Linker. Diese machen die Datei locker dreimal so groß, wenn das Häkchen gesetzt ist. Diese Daten sind aber z.B. für Remotedebugging notwendig.


Delphi-Laie - Mi 03.08.11 15:32

Eine Möglichkeit, wenn man bei der VCL bleiben möchte, fiel mir just noch ein: Man kann alle überflüssigen Units entfernen (evtl. tun das neuere Delphi-Versionen automatisch, oder man kann das wie in Lazarus aufrufen).

Man könnte sogar die verwendeten Units kastrieren. Das probierte ich einmal. Damit macht man sich aber einen Haufen Arbeit, der sich m.E. nicht lohnt. Es dauert nämlich nicht lang, dann zickt Delphi, daß die Units mit/in unterschiedlichen Versionen compiliert wurden (die Units benötigen sich untereinander ja auch teilweise). Irgendwann verliert man ggf. den Überblick. Da ist die VCL-freie Programmierung wohl lohnenswerter.


Kralle - Di 09.08.11 19:53

Danke, für Eure Antworten.

Gruß Heiko


Delphi-Laie - Mi 09.11.11 19:36

user profile iconKralle hat folgendes geschrieben Zum zitierten Posting springen:
Danke, für Eure Antworten.

Gruß Heiko


Eine gute Anregung, wie man die Größe der Compilate noch etwas verringert bekommt, findet sich [url=http://www.delphipraxis.net/1135323-post10.html]hier[/url].


Delphi-Laie - Mi 09.05.12 14:19

[url=http://www.delphipraxis.net/1165419-post10.html]In der Delphipraxis wurde just noch darauf hingeweisen[/url], daß es noch eine weitere Möglichkeit gibt: StripReloc.


jaenicke - Mi 09.05.12 14:37

Das stand oben ja auch schon. ;-)
user profile iconDelphi-Laie hat folgendes geschrieben Zum zitierten Posting springen:
user profile iconspawn89 hat folgendes geschrieben Zum zitierten Posting springen:
Aber Tools wie StripReloc und UPX dürfen genutzt werden!


Danke für die ersten beiden Punkte! StripReloc kenne ich nicht


Delphi-Laie - Mi 09.05.12 17:02

Soweit reichte meine Erinnerung schon nicht mehr, und da ich das damals eben nicht verinnerlichte, geschweige denn ausprobierte, war es nicht gegenwärtigu, und so las ich mir diese Diskussion nicht noch einmal durch. Ich bitte um Nachsicht!