AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Lazarus Carbon-Interface: !Test!
Thema durchsuchen
Ansicht
Themen-Optionen

Lazarus Carbon-Interface: !Test!

Ein Thema von argonix · begonnen am 28. Aug 2007 · letzter Beitrag vom 16. Okt 2007
Antwort Antwort
Benutzerbild von argonix
argonix
Registriert seit: 28. Feb 2007
Hallo DP!
Ich finde die Idee, mit Lazarus eine Art "plattformübergreifendes Delphi" zu schaffen einfach genial. Deshalb setze ich mich schon seit einiger Zeit mit Lazarus auf verschiedenen Systemen (Ubuntu Linux, SuSe Linux, MacOS-X, Windows) auseinander. Für ein (sehr) kleines Projekt benötigte ich vor kurzem eine MacOs-Carbon-Anwendung. Da die Entwicklung mit FreePascal und XCode sehr schlecht dokumentiert ist und GUI- Erstellung mit Java eine Katastrophe ist, die am Ende sowieso nicht läuft, bin ich wieder bei Lazarus gelandet. (Nach einer Woche (!) ist es mir dann gelungen mein Projekt zu kompilieren und zu starten. Damit auch andere schnell und einfach einen Blick auf Lazarus' Carbon- Oberfläche werfen können, ohne erst X11, Fink, FPC und FPCSrc zu installieren, veröffentliche ich hier ein Bundle, das (fast) alles für einen Test des Carbon-Lazarus enthält.) <= Seit dem ich das geschrieben habe ist ca. 1 monat vergangen und es hat sich viel getan. Deshalb ist die folgende Anleitung auch überarbeitet.
---
{Ich habe dieses Thema jetzt unter "OpenSource" abgelegt, weil mir nichts besseres einfiel. Sollte dieses Thema nicht hier hin gehören, bitte ich einen Moderator, es zu verschieben.}
-------------------
/!\ACHTUNG: Die Carbon Oberfläche ist noch nicht ganz bugfrei. Dieses Bundle dient nur zu Testzwecken!
(Das Packet enthält nur die Version für Intel-Macs und ist auf PowerPCs nicht lauffähig.)


-------------------
Wer Lust hat, mal einen Blick auf dieses Lazarus zu werfen, der sollte den Anweisungen unten folgen:
1. XCode herunterladen und installieren
Lade XCode von [1] nach einer kurzen Registrierung herunter und installiere das komplette Packet.
(XCode wird zum kompilieren benötigt)
http://www.tenstral.de/images/storie...inst-xcode.png
2. Lazarus Bundle herunterladen
Lade das Lazarus Bundle für Intel-Macs über den Download-Link unten herunter. Öffne das Disk-Image und ziehe die Datei "Lazarus.app" in den Ordner "Anwendungen".
3. FPC Snapshot installieren
Lade den Freepascal-Snapshot von [2] herunter und installiere ihn.
3. Variablen prüfen
Öffne ein neues Bash- Terminal und tippe folgendes ein:

Code:
sudo nano /etc/fpc.cfg
Tippe 3 Zeilen mit folgendem Inhalt ein, wobei <path-to-lazarus> mit dem Pfad zum Lazarus-Bundle ersetzt werden muss:
Code:
-Fu<path-to-lazarus-dir>/Lazarus.app/Contents/MacOS/fpc/lib/fpc/2.1.5/units/$fpctarget

-Fu<path-to-lazarus-dir>/Lazarus.app/Contents/MacOS/fpc/lib/fpc/2.1.5/units/$fpctarget/*

-Fu<path-to-lazarus-dir>/Lazarus.app/Contents/MacOS/fpc/lib/fpc/2.1.5/units/$fpctarget/rtl
Das sollte dann so aussehen:
http://www.tenstral.de/images/storie...o-term-fpc.png
Nun drücke CTL+O und bestätige das Speichern mit Return. Drücke dann die Tastenkombination CTL+X und schließe das Terminal wieder. <= Diese Schritte sind nicht mehr nötig!
-
Starte Lazarus.app:
http://www.tenstral.de/images/stories/lazmac/lazmac.png
Wähle "Enviroment=>Enviroment Options":
http://www.tenstral.de/images/storie...z-envpaths.png
Setze die Pfade so, wie auf dem Screenshot gezeigt. (Wenn Lazarus.app nicht unter "Anwendungen" liegt, ersetze /Applications/ durch den richtigen Pfad.
4. Projekt kompilieren
Um ein Projekt mit Carbon-Oberfläche zu kompilieren, öffne ein fertiges Projekt (oder erstelle ein neues) und navigiere über "Project -> Compiler Options" zu "Linking". Setze die Checkbox "Pass Options To The Linker (delimiter is space)" und tippe im feld darunter folgendes ein:
Code:
-framework carbon
Speichere die Einstellungen. Das Projekt sollte sich jetzt kompilieren lassen.
Tipp:
Um Application Bundles zu erzeugen, lade die MacOS-Anwendung "createmacapp"((c) Mattias Gärtner) herunter. öffne ein Terminal und gebe folgendes ein:
Code:
cd /<macapppath>
./createmacapplication /Users/<yourUserName>/lazprojects/project1
In der ersten Zeile muss der Ordner angegeben werden, in dem die Anwendung liegt.
/Users/<yourUserName>/lazprojects/project1 steht für den Pfad zur importierenden Binärdatei. (project1 ist die Binary des Projektes)
5. Fertig!
Nun sollte man Projekte mit der Carbon-Oberfläche kompilieren können. Allerdings sollte diese Technik noch AUF KEINEN FALL für umfangreichere Projekte verwendet werden, da noch enorm viele Bugs in diesem Lazarus (und den damit erstellten Anwendungen) enthalten sein können.
-----------------------------------------
Direkt Download (ca. 74 MB bei ~280 KB/s , DMG-Image)
-----------------------------------------
Download CreateMacApplication
------------------
Nützliche Links:
Lazarus OS-X Programming Tips => Tipps zur Entwicklung mit Lazarus unter MacOS-X
Lazarus Roadmap => Detailierte Roadmap des Lazarus Projektes
Delphi-Entwicklung unter MacOS-X => Ein hervorragendes Tutorial von CalganX zum Thema "Entwicklung mit "Delphi" unter MacOS"
Delphi MacOS Petitions => Hier kann man sich als Interessent an einem Delphi für MacOS eintragen. Die Liste wird an Borland/CodeGear übermittelt.
 
Benutzerbild von WordsBG
WordsBG

 
Delphi 7 Professional
 
#2
  Alt 28. Aug 2007, 20:00
In wieweit ist das ganze jetzt funktionabel? Ich meine mich erinnern zu können das du erwähnt hast, dass der Formular-Designer nicht funktioniert. Außerdem wäre es interessant zu wissen wie es mit localisationen aussieht.
Werde mir das Teil allerdings morgen mal ansehen, scheint ja ganz interessant zu sein (wobei ich mit GTK-Lazarus und Carbon-Programmen eigentlich auch einverstanden wäre, aber native Umgebung ist natürlich VIEL besser).

edit: Oh weder Form-Designer noch den Source-Editor?! Dann wäre es ja praktisch nutzlos... (außer zum reinen recompilen von Win/Linux-Lazarus-Projekten).
  Mit Zitat antworten Zitat
Benutzerbild von argonix
argonix

 
Delphi 2005 Personal
 
#3
  Alt 28. Aug 2007, 20:07
Naja... Ich habe deshalb das Programm unter Windows erstellt und hinteher kleinere Bearbeitungen mit Apples TextEdit vorgenommen. So geht das hervorragend! Aber leider lässt sich der Text wirklich nicht direkt im Editor eintippen, da, laut Roadmap, TSysnEdit noch nicht richtig implementiert ist.
(Fertige Projekte lassen sich, mit Formular, laden und kompilieren)
Matthias
  Mit Zitat antworten Zitat
christian_u
 
#4
  Alt 28. Aug 2007, 20:17
Schönes ding, wenn ich auch der meinung bin das man das Carbon interface in diesem Stadium noch nicht unbedingt so publizieren sollte, aber schön. Stellst du deine scripte zum bauen des Installers als patch zur verfügung ?
  Mit Zitat antworten Zitat
Benutzerbild von argonix
argonix

 
Delphi 2005 Personal
 
#5
  Alt 29. Aug 2007, 15:00
Zitat von christian_u:
Schönes ding, wenn ich auch der meinung bin das man das Carbon interface in diesem Stadium noch nicht unbedingt so publizieren sollte, aber schön. Stellst du deine scripte zum bauen des Installers als patch zur verfügung ?
Ich erstelle am besten eine Anwendung, die die Bundles automatisch aus den Packeten erstellt. Allerdings weis ich noch nicht, ob das funktioniert (vor allem unter MacOS!). Ich habe für die erstellung nur wenige (genau: 3) Scripte erstellt, der Rest war Handarbeit.
Ich veröffentliche die Scripte und schreibe eine Anleitung dazu, wenn die neue Lazarus-Version rausgekommen ist. (0.9.23)
----
Info: Da das DMG-Diskimage beim Upload immer zerschossen wurde, stelle ich das Bundle jetzt in einem ZIP-Archiv auf den Server.
Matthias
  Mit Zitat antworten Zitat
Benutzerbild von argonix
argonix

 
Delphi 2005 Personal
 
#6
  Alt 4. Okt 2007, 15:20
Hurra!
Ein Hoch auf die Lazarus-Entwickler!
Ich habe vor kurzem, weil ich Zeit hatte, Lazarus nochmal für MacOS Carbon mit dem neuesten Quellcode kompiliert: Das hat ca. 45 Minuten gedauert, war wesentlich einfacher und das Ergebnis ist SUPER!
  • Der Form-Editor funktioniert!
  • Der Quelltext-Editor funktioniert auch!
  • Kaum noch Zugriffsverletzungen (Ich habe 2 gefunden)
Ich habe die Anleitung oben verändert und das fertige "Kompilat" hochgeladen. Die Screenshots sind ebenfalls neu.
Wenn die Lazarus-Leute so weitermachen, dann ist Lazarus bald eine echt ernstzunehmende Alternative zum Original-Delphi!
Matthias
  Mit Zitat antworten Zitat
christian_u
 
#7
  Alt 4. Okt 2007, 17:09
Naja so meint ich das nicht, die Installer Packages werden beim Lazarus mit Scripten automatisch generiert. So werden dann z.b. die Snapshots täglich über nen Chron Job generiert. Zumindest der Teil den du schon als Script hast könnte ja behilflich sein ein komplettes Installer script zu baun...
Hoff es findet sich bald mal jemand der ein Script für nen Installer mit Carbon intf baut. Für GTK existieren sie ja schon ...
  Mit Zitat antworten Zitat
Benutzerbild von argonix
argonix

 
Delphi 2005 Personal
 
#8
  Alt 16. Okt 2007, 19:29
Also: Die IDE mit Carbon zu kompilieren ist jetzt wirklich so einfach geworden, dass die Scripte, die ich dafür gebaut habe, sinnlos sind oder nichts bringen. Würde dir die Terminal-Anwendung reichen, mit der ich das Lazarus-Bundle erstelle?
P.S.: Ein komplettes Installer-Script? Da könnte es Probleme mit dem FreePascalCompiler und Lazarus geben, da sich dieser nicht so einfach in Lazarus integrieren lässt. (Es gibt Probleme mit den Pfaden, ich habe deshalb auch den FPC aus dem neuen Bundle herausgenommen) Aber so ein Script wäre echt praktisch, vor allem, wenn Binaries für PowerPC und IntelMacs erzeugt werden könnten! (vielleicht könnte ich so auch meinen Info-Lehrer von Lazarus überzeugen )
Matthias
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz