![]() |
DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi
Klar, mein XE5 ist auch nicht mehr das jüngste Delphi, aber das hat mich dann doch etwas verwundert, denn bisher kannte ich FPC nur mit vergleichsweise großen Kompilaten.
Folgendes ist mir mit FPC 3.1.1 neuerdings aufgefallen: Ich habe unter Delphi XE eine ganz einfache DLL(System.Classes und System.SysUtils eingebunden) erstellt. Gesamtgröße, ganz normal, unter Win64 Release: 1.582 KB. Die DLL erstelle ich ebenfalls unter Linux mit CodeTyphon. Zum Spaß habe ich dort mal das Crosscompiling für Win64 aufgesetzt. Und was kam raus? Die gleiche DLL mit FPC kompiliert: 230 KB! Nicht nur, dass das FPC-Kompilat kleiner ist als das von Delphi, nein, sogar fast siebenmal kleiner. Kann mir das einer erklären? Also nicht, dass das ein Problem darstellen würde, es wundert mich nur sehr. Hat es seit XE5 da jede Menge erstaunlicher Entwicklungen gegeben oder hat FreePascal nun Delphi doch endlich überholt? Ich glaube, ich mache mal ein paar Geschwindigkeitstests... |
AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi
Zitat:
|
AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi
Wie aufholen?
Delphi: 1.582 KB FreePascal: 230 KB Bei gleicher DLL. |
AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi
In der mit Delphi kompilierten Version steckt eben entsprechend mehr Funktionalität. Da ändert es auch nichts daran die gleichen Units einzubinden, weil diese eben nicht gleich sind.
|
AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi
Siebenmal mehr Funktionalität? Was denn?
Und wenn das alles nicht gebraucht wird, fragt sich, warum Delphi es dann überhaupt in das Kombilat steckt? |
AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi
Um es auf andere Art zu zeigen: Eine leere DLL mit SysUtils und Classes in Delphi 7 hat knapp 90 kB. Ist Delphi 7 damit ein Fortschritt gegenüber Delphi XE5 oder FreePascal?
|
AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi
Zitat:
Zitat:
|
AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi
Ich war selbst bisher immer der Meinung, dass Delphi FreePascal noch um Meilen voraus ist. Aber sag mir doch bitte, welche Mengen Funktionen ich in Delphi erwarten kann, die es in FreePascal nicht gibt? Klar, mir fällt da das ein oder andere ein (anonyme Methoden z.B.), aber was denn Großartiges, das einen solchen Unterschied erklären könnte?
Zu Delphi 7: Natürlich nicht. Aber zwischen Delphi 7 und XE5 etc. ist schon ein erheblicher Unterschied. Diesen sehe ich nicht zu FreePascal. Außerdem mein Kommentar zur Geschwindigkeit. |
AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi
Zitat:
Ansonsten kannst du ja auch versuchen wirklich 100% den gleichen Code zu kompillieren und nicht nur Units mit dem selben Namen einzubinden und dann einen richtigen Vergleich machen :wink: Freundliche Grüsse |
AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi
Zitat:
Vielleicht sollte man sich erstmal fragen, was diese Größe der DLL als Vergleichswert überhaupt aussagt. Wie schon in meiner ersten Antwort angedeutet, ist es erstmal eine Ansammlung von compiliertem Code. Es sagt insbesondere nichts über die Qualität, den Funkionsumfang oder die Effizienz dieses Codes aus. Wenn ich nur die Größe der DLL betrachte, dann hat Delphi 7 hier immer noch die Nase vorn. Trotzdem vermeide ich es weitestgehend, damit zu arbeiten und gebe aktuell Delphi 10.1 Berlin den Vorzug. Hier hat die leere DLL übrigens 968704 Bytes (RELEASE). |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz