FPC 2.4.2 ist da!

Mitteilungen und Ankündigungen

FPC 2.4.2 ist da!

Beitragvon marcov » 13. Nov 2010, 10:53 FPC 2.4.2 ist da!

Hello,

we have placed a new major release of the Free Pascal
Compiler, version 2.4.2 on our ftp-servers.

Changes that may break backwards compatibility are documented at:
http://wiki.freepascal.org/User_Changes_2.4.2

Downloads are available at:

the main FTP server at

ftp://ftp.freepascal.org/pub/fpc/dist/2.4.2/

and mirrors like

ftp://freepascal.stack.nl/pub/fpc/dist/2.4.2/
ftp://ftp.hu.freepascal.org/pub/fpc/dist/2.4.2/

and sourceforge.

Enjoy!

The Free Pascal Compiler Team

Free Pascal Compiler

Version 2.4.2

******************************************************************************
What's New in 2.4.2
******************************************************************************

Free Pascal 2.4.2 contains many fixes and a few new features. Most bugfixes
in the RTL and packages before june 2010 have been merged.

Please also see http://wiki.freepascal.org/User_Changes_2.4.2 for a list
of changes which may affect the behaviour of previously working code, and
how to cope with these changes.

Some highlights are:

Compiler:
* Support D2006+ FOR..IN, with some FPC specific enhancements. Refer to
http://wiki.freepascal.org/for-in_loop for more information
* Support for sealed and abstract classes.

Packages:
* Many improvements to the XML units
* Many improvements to the database units
* Many improvemnets to the chm units

Platforms:
* Long term bug in OS/2 implementation of unit Video finally fixed which
among others allows inclusion of the text-mode IDE (without debugger)
for this platform as part of the distribution again.

See http://bugs.freepascal.org/changelog_page.php for the list of reported
bugs which have been fixed in this release.
marcov
 
Beiträge: 1035
Registriert: 5. Aug 2008, 08:37
Wohnort: Eindhoven (Niederlande)
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk) | 
CPU-Target: 32/64,PPC(+64), ARM
Nach oben

Beitragvon Euklid » 22. Nov 2010, 21:57 Re: FPC 2.4.2 ist da!

Danke für Eure Arbeit!

Die neue for-in-Schleife klingt spannend... :)
Euklid
 
Beiträge: 2760
Registriert: 22. Sep 2006, 09:38
Wohnort: Hessen

Beitragvon mschnell » 23. Nov 2010, 09:24 Re: FPC 2.4.2 ist da!

Euklid hat geschrieben:Die neue for-in-Schleife klingt spannend... :)
In der Englischen wurden dann natürlich sofort die Probleme bei for-in für UTF-8 codierte Strings diskutiert....

-Michael
mschnell
 
Beiträge: 3243
Registriert: 11. Sep 2006, 09:24
Wohnort: Krefeld
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ) | 
CPU-Target: X32 / X64 / ARMv5
Nach oben

Beitragvon theo » 23. Nov 2010, 12:12 Re: FPC 2.4.2 ist da!

mschnell hat geschrieben:In der Englischen wurden dann natürlich sofort die Probleme bei for-in für UTF-8 codierte Strings diskutiert....


Mein alter UTF8Scanner macht was ähnliches.
Nur heisst es dort nicht "for..in" sondern:
Code: Alles auswählen
repeat 
 DoSth(s.Next);
until s.Done;


http://wiki.lazarus.freepascal.org/Theodp
theo
 
Beiträge: 8064
Registriert: 11. Sep 2006, 18:01

Beitragvon carli » 24. Nov 2010, 13:18 Re: FPC 2.4.2 ist da!

theo hat geschrieben:
mschnell hat geschrieben:In der Englischen wurden dann natürlich sofort die Probleme bei for-in für UTF-8 codierte Strings diskutiert....


Mein alter UTF8Scanner macht was ähnliches.
Nur heisst es dort nicht "for..in" sondern:
Code: Alles auswählen
repeat 
 DoSth(s.Next);
until s.Done;


http://wiki.lazarus.freepascal.org/Theodp


for .. in ist auch nur eine Abkürzung o.g. Iterator-Patterns.
Man kann auch für for..in selber Iteratoren implementieren, wenn ich z.B. etwas für alle Primzahlen bis 100 haben will.
carli
 
Beiträge: 660
Registriert: 9. Jan 2010, 17:32
OS, Lazarus, FPC: Linux 2.6.x, SVN-Lazarus, FPC 2.4.0-2 | 
CPU-Target: 64Bit
Nach oben

Beitragvon Bora4d » 5. Dez 2010, 21:18 Re: FPC 2.4.2 ist da!

FPC 2.4.2 ? Ich benutze dank Lazarus-Snapshot seit Monaten 2.4.3 :) Das wäre ja Rückschritt :lol:
Anstatt nicht notwendige neue Delphi-Freatures nachzumachen hätten die besser die Zeit für Optimierung genutzt. Die exe-Größen unter Linux ist ja kaum ertragbar.
Einfache LCL-Anwendung ist min. 4 MB auch mit Strip!
Und fpgui-Anwendung 1 MB
Und jetzt kommts einfache GKT2 Anwendung ist 531 KB. Das gleiche GTK2-Programm ist unter Windows nur 148 KB groß.
Bora4d
 
Beiträge: 290
Registriert: 24. Dez 2007, 13:14
OS, Lazarus, FPC: WinXP-Pro-Sp3, Xubuntu 12.04, (Laz 1.1-SVN Mai2012, FPC 2.6.1 / 2.6.0-Linux) | 
CPU-Target: AMD64X2
Nach oben

Beitragvon MAC » 5. Dez 2010, 22:18 Re: FPC 2.4.2 ist da!

Bora4d hat geschrieben:Die exe-Größen unter Linux

kein Kommentar :mrgreen:
Code: Alles auswählen
Signatur := nil;
MAC
 
Beiträge: 770
Registriert: 21. Feb 2009, 13:46
OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2) | 
CPU-Target: 32Bit
Nach oben

Beitragvon Socke » 5. Dez 2010, 22:20 Re: FPC 2.4.2 ist da!

Bora4d hat geschrieben:Anstatt nicht notwendige neue Delphi-Freatures nachzumachen hätten die besser die Zeit für Optimierung genutzt. Die exe-Größen unter Linux ist ja kaum ertragbar.

Ich bin der Meinung, dass die Code-Größe durch den Free Pascal Compiler auf ein vollkommen annehmbares Maß reduziert werden kann! In der Regel muss der Lazarus(!)-Anwender nämlich seine (!) Einstellungen optimieren.
Bora4d hat geschrieben:Einfache LCL-Anwendung ist min. 4 MB auch mit Strip!
Und fpgui-Anwendung 1 MB
Und jetzt kommts einfache GKT2 Anwendung ist 531 KB. Das gleiche GTK2-Programm ist unter Windows nur 148 KB groß.

Ein nicht ganz triviales Programm kann ich unter Linux/GTK2 auf 2.35 MiB zusammenkürzen. Strip kann nur Debuggingsymbole entfernen. Bei weniger Code gibts natürlich auch davon weniger, aber die größte Ursache dieser Symbole ist der Debugger und nicht der FPC oder Lazarus (FPC erstellt sie für den Debugger).
Ein wenig ausführlicher wird http://wiki.lazarus.freepascal.org/Size_Matters/de, welches du unbedingt gelesen haben solltest. 4 MB für eine triviale LCL-Anwendung (Form+Button) sprechen für unzureichende Optimierung der Compiler-Einstellungen und unzureichenden Gebrauch selbiger.

Edit:
MAC hat geschrieben:
Bora4d hat geschrieben:Die exe-Größen unter Linux

kein Kommentar :mrgreen:

Ich schätze, hier kommt WINE zum Einsatz :roll:
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Socke
 
Beiträge: 2552
Registriert: 22. Jul 2008, 18:27
Wohnort: Köln
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 8.1/Debian GNU/Linux/Raspbian/openSUSE | 
CPU-Target: 32bit x86 armhf
Nach oben

Beitragvon Bora4d » 5. Dez 2010, 22:47 Re: FPC 2.4.2 ist da!

MAC hat geschrieben:
Bora4d hat geschrieben:Die exe-Größen unter Linux

kein Kommentar :mrgreen:

Executables > exe
Entschuldige, dass ich mich nicht klar ausgedrückt habe.

@Socke
Den Text habe ich vor Jahren gelesen. Aber damals hatte Smartlink nicht viel gebracht. Jetzt habe ich GTK2-Demo mit Smartlink (-XX) kompiliert und siehe von 531 Kb auf 73 Kb geschrumpft. :)
Ich kompiliere mal meine Programme noch mal mit Smartlink.
Bora4d
 
Beiträge: 290
Registriert: 24. Dez 2007, 13:14
OS, Lazarus, FPC: WinXP-Pro-Sp3, Xubuntu 12.04, (Laz 1.1-SVN Mai2012, FPC 2.6.1 / 2.6.0-Linux) | 
CPU-Target: AMD64X2
Nach oben

Beitragvon Socke » 5. Dez 2010, 22:56 Re: FPC 2.4.2 ist da!

Bora4d hat geschrieben:Den Text habe ich vor Jahren gelesen. Aber damals hatte Smartlink nicht viel gebracht. Jetzt habe ich GTK2-Demo mit Smartlink (-XX) kompiliert und siehe von 531 Kb auf 73 Kb geschrumpft. :)
Ich kompiliere mal meine Programme noch mal mit Smartlink.

Es reicht natürlich nicht aus, nur deine Units mit Smartlinking (-CX -> Erzeugung entsprechend linkbaren Codes) zu übersetzen und dann das Projekt ebenfalls mit Smartlinking (-CX -> Anwendung dessen) zu erstellen. Man muss alle verwendeten Units (RTL, FCL, LCL, Packages, eigene Units) so erstellen, damit der Effekt maximal zum Tragen kommt.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Socke
 
Beiträge: 2552
Registriert: 22. Jul 2008, 18:27
Wohnort: Köln
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 8.1/Debian GNU/Linux/Raspbian/openSUSE | 
CPU-Target: 32bit x86 armhf
Nach oben

Beitragvon Bora4d » 5. Dez 2010, 23:27 Re: FPC 2.4.2 ist da!

Socke
Bei LCL-Anwendungen ist es immer noch 4,5 MB. Ich kompiliere mal die Bibliotheken wie du es gesagt hast neu.
Ich denke die LCL ist zu ineffizient programmiert. Da ist viel zu viel unnötige Code enthalten.
Wenigstens direkte GKT2 und Win32 Anwendungen sind jetzt klein.
Bora4d
 
Beiträge: 290
Registriert: 24. Dez 2007, 13:14
OS, Lazarus, FPC: WinXP-Pro-Sp3, Xubuntu 12.04, (Laz 1.1-SVN Mai2012, FPC 2.6.1 / 2.6.0-Linux) | 
CPU-Target: AMD64X2
Nach oben

Beitragvon marcov » 14. Dez 2010, 21:06 Re: FPC 2.4.2 ist da!

Bora4d hat geschrieben:Socke
Bei LCL-Anwendungen ist es immer noch 4,5 MB. Ich kompiliere mal die Bibliotheken wie du es gesagt hast neu.


Da machst du etwas falsch. Lese noch einmal Size Matters (den ich original geschrieben habe), es enthalt große Magnituden, und 4.5 MB fuer ein einfache Anwendung ist zu viel. ich wurde 1MB erwarten.
Hast du ein RTL und LCL die mit smartlinking kompiliert ist?

Ich denke die LCL ist zu ineffizient programmiert. Da ist viel zu viel unnötige Code enthalten.


Man kann sich ueber "zu" streiten, das ist alles Relativ.

Wenigstens direkte GKT2 und Win32 Anwendungen sind jetzt klein.


Handcodieren ist immer kleiner, aber oft um mehr als denselben Faktor aufwendiger. Und nicht in erster Magnitude portabel.

Mit Terabyte Festplatten Speicher unter Euro 100 kann man etwas lockerer sein.
marcov
 
Beiträge: 1035
Registriert: 5. Aug 2008, 08:37
Wohnort: Eindhoven (Niederlande)
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk) | 
CPU-Target: 32/64,PPC(+64), ARM
Nach oben

Beitragvon Euklid » 14. Dez 2010, 22:44 Re: FPC 2.4.2 ist da!

Bora4d hat geschrieben:Bei LCL-Anwendungen ist es immer noch 4,5 MB. Ich kompiliere mal die Bibliotheken wie du es gesagt hast neu.


Bora4d: Ich meine, ich hätte Dir in einem anderen Thread schonmal folgenden Link geschickt? /viewtopic.php?f=51&t=1878
Dabei handelt es sich um eine Anleitung, mit welchen Lazarus-Einstellungen die Größe der Binärdateien schrumpfen - auch ohne upx auf Werte um 1 MB.

- Euklid
Euklid
 
Beiträge: 2760
Registriert: 22. Sep 2006, 09:38
Wohnort: Hessen

Beitragvon Bora4d » 19. Dez 2010, 20:42 Re: FPC 2.4.2 ist da!

Euklid hat geschrieben:
Bora4d hat geschrieben:Bei LCL-Anwendungen ist es immer noch 4,5 MB. Ich kompiliere mal die Bibliotheken wie du es gesagt hast neu.


Bora4d: Ich meine, ich hätte Dir in einem anderen Thread schonmal folgenden Link geschickt? /viewtopic.php?f=51&t=1878
Dabei handelt es sich um eine Anleitung, mit welchen Lazarus-Einstellungen die Größe der Binärdateien schrumpfen - auch ohne upx auf Werte um 1 MB.

- Euklid

Ich habe auch unter Windows Dateigröße von ca. 1,5 MB ohne UPX. Was ich meinte war Linux da habe ich immer 4 MB. Villeicht mache ich etwas falsch. Ich folge mal die Anleitung Schritt für Schritt.
Die Dateigröße von Lazarus ist nicht so schlimm. Ich habe mich am Freitag mit Qt-C++ Programmierung beschäftigt, da beanspruchen ganz einfache QT-Programme unter Windows Hauptspeicher von ca. 17 MB.
Und die einfachen leeren WxWidgets Programme haben Dateigröße von ca 2,5 MB.
Bora4d
 
Beiträge: 290
Registriert: 24. Dez 2007, 13:14
OS, Lazarus, FPC: WinXP-Pro-Sp3, Xubuntu 12.04, (Laz 1.1-SVN Mai2012, FPC 2.6.1 / 2.6.0-Linux) | 
CPU-Target: AMD64X2
Nach oben

Beitragvon pluto » 17. Mai 2011, 13:44 Re: FPC 2.4.2 ist da!

a beanspruchen ganz einfache QT-Programme unter Windows Hauptspeicher von ca. 17 MB.

Siehst du, also noch schlimmer als Lazarus.
MFG
Michael Springwald
Aktuelles Projekt: PlutoArduino
pluto
 
Beiträge: 6702
Registriert: 19. Nov 2006, 12:06
Wohnort: Oldenburg/Oldenburg
OS, Lazarus, FPC: Linux Mint 18.3 | 
CPU-Target: AMD
Nach oben

• Themenende •

Zurück zu Ankündigungen



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste

cron
porpoises-institution
accuracy-worried