Einzelnen Beitrag anzeigen

Benutzerbild von JamesTKirk
JamesTKirk

Registriert seit: 9. Sep 2004
Ort: München
604 Beiträge
 
FreePascal / Lazarus
 
#100

AW: Ist Delphi so Bedeutungslos ?

  Alt 14. Feb 2013, 09:15
Zitat von JamesTKirk:
Das verwundert mich schon sehr. Ich habe einen Rechner mit 800 MHz, 1GB RAM auf dem Windows 7 läuft und in zwei Minuten schaffe ich es den kompletten Compiler neu bauen zu lassen (aus der IDE raus).
Diese Aussage betrachte ich als glatte Lüge, Schönmalerei wie sie nur betonköpfige Ideologen fertig bringen, denn ich habe das auf einem 1,7GHz Doppelkernprozessor Intel Atom auf einem Tablet mit 2GByte Ram getestet.
Hey! Beleidigungen müssen nicht sein.

Ich hab jetzt grade den Test auf besagtem Rechner (800 MHz, 1GB RAM) wiederholt. Lazarus Version 1.1, Compiler Version 2.6.0 (und nur um es klarzustellen: kein CodeTyphon). Kalter Festplattencache (jedoch ne SSD). Von Shift+F9 (komplett neu Bauen) bis "Projekt "ppc386" erfolgreich kompiliert" vergingen 1 Minute und 17 Sekunden.

Könntest du als Test ja auch mal probieren. Den aktuellen Sourcecode von Free Pascal herunterladen, das Projekt compiler/pp.lpi in der IDE öffnen und im Menu "neu kompilieren" wählen (in älteren Versionen war der Menüpunkt noch nicht per Default mit nem Tastaturkürzel verknüpft). Da der Compiler keine GUI Komponenten verwendet ist es eine gute Möglichkeit herauszufinden, wie schnell der Compiler an sich ist.

Zitat von schöni:
CodeTyphon ist so langsam. Altere Lazarus Versionen schneiden hier besser ab, wohl auch,weil nicht so viel Code mitgeschleppt wird. Deswegen sagte ich ja auch Komponenten besser dynamisch laden zu dem Zeitpunkt wo sie wirklich gebraucht werden. In Delphi wäre das wegen der Packages schon heute möglich. FP müsste wohl dazu um diese Packages erweitert werden.
Wenn du GUI Anwendungen kompiliert, dann könnte das damit zusammenhängen, dass einfach mehr Pfade als Unitverzeichnisse übergeben werden und damit auch mehr Verzeichnisse nach Units durchsucht werden. Allerdings übergibt Lazarus (und hier schließe ich das von CodeTyphon verwendete Lazarus mit ein) nur die Unitverzeichnisse von Packages, die auch direkt oder indirekt von deinem Projekt verwendet werden.
Desto mehr unterschiedliche Verzeichnisse du bei Delphi angibst, desto langsamer wird es übrigens auch dort. Wir haben das zum Beispiel in der Arbeit: da haben wir recht viele Verzeichnisse und die IDE sitzt erstmal etwa ne halbe Minute rum und sucht die Dateien zusammen bis sie dann anfängt die einzelnen Units zu kompilieren (ist übrigens auch so, wenn man mit dcc32 auf der Kommandozeile kompiliert).

Zitat von schöni:
Zitat von JamesTKirk:
Das Schreiben von Dokumentation ist leider nicht jedermanns Sache und noch dazu enthält allein Free Pascal eine große Anzahl an zusätzlichen Units...
Mag sein, aber ich kann an dieser Stelle nicht aushelfen, nicht weil ich zu faul bin, sondern weil ich so schlicht und einfach die Komponente(n) nicht verstehe, nicht weiß, wie sie zu verwenden ist/sind. Schade eigentlich um die Arbeit derProgrammierer, die die Komponenten gebaut haben, das sind nämlich wirklich gute dabei, wie eben zB. TODBCConnection, denn warum soll ich zur Einarbeitung in die Datenbankproblematik einen extra Server installierenwo doch ODBC in Windows schon drin ist?
Ich hab übrigens gerade das hier gefunden. Ist zwar keine Dokumentation in dem Sinne, vielleicht hilft es aber trotzdem weiter.

Zitat von schöni:
Zitat von CCRDUDE:
Über den Download-Link auf der Lazarus-Webseite wärst Du entweder bei 0.9.28 oder 0.9.30 gelandet. Bei den ungeraden Versionsnummern steht das deutlich dabei, ich zitiere mal von der Daily Builds-Seite (woanders finde ich aktuell gar keine ungeraden Builds):
Darauf muss man aber erst mal kommen auf der Lazarus Seite zu schauen, wenn man Code Typhon sucht.
Ich bleibeb nun bei Lazarus 0.9.29. Eine spätere Version muss nicht sein.
Ich würde zumindest schauen auf Lazarus 1.0.6 zu wechseln. 0.9.29 ist doch schon ne Weile her... und wie auf der Seite mit den Snapshots erwähnt wird: "der Compiler hat den Code für gut genug befunden". Stabile Releases (wie 0.9.28, 0.9.30, 1.0, 1.0.2, 1.0.4 und 1.0.6) erfahren umfangreichere Tests als die Entwicklungsversionen.

Ich bekomm da 1500 mal syntax error und n paar andere Fehler.
Vielleicht ist das ein weiterer Grund, warum ich bigide nicht verwende... da werden nämlich auch Komponenten mitkompiliert, die nur selten verwendet werden.

Gruß,
Sven
Sven
[Free Pascal Compiler Entwickler]
this post is printed on 100% recycled electrons
  Mit Zitat antworten Zitat