Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Entwickler>Hilfe beim Kompilieren gesucht - Lisa Emulator (IDLE)

Hilfe beim Kompilieren gesucht - Lisa Emulator (IDLE)

andreas_g
andreas_g24.04.1108:19
Liebe MTN Community,

ich habe gestern versucht diesen Apple Lisa Emulator:

http://sourceforge.net/projects/idle-lisa-emu/

mit Hilfe der Kommandozeile unter Mac OS X zu kompilieren (PowerMac G4, Mac OS X 10.5.8, Xcode 3.1.3). Leider ohne Erfolg!

Obwohl ich, wie im Makefile.unix beschrieben, Zeilen ein- und auskommentiert habe um unter Mac OS X zu kompilieren bekomme ich zahlreiche Fehler.

Leider habe ich keinerlei Erfahrung mit dem Kompilieren von Programmen.
Ich denke es bringt jetzt nicht viel alle Fehler hier aufzuzählen. Aber vielleicht kann jemand einen Versuch starten und mir eventuell eine Anleitung geben?

Ziel wäre eine Intel- oder Universal-Binary.

Bin für alle Tipps dankbar!

Andreas
0

Kommentare

_mäuschen
_mäuschen24.04.1112:43

Versuchs mal hiermit

ist ohne I (incomplete)

0
andreas_g
andreas_g24.04.1115:22
Danke für den Tipp! Allerdings kenne ich diese Alternative bereits. Er ist für meine Zwecke ziemlich überladen (vorallem das Interface) und ich hatte auch schon einige Crashes damit.

Würde daher gerne den minimalistischen Emulator IDLE einmal testen. Er sollte soweit vollständig sein, als das sich alle LISA Software damit ausführen lässt.

Vielleicht hat bringt es ja doch noch jemand unter Mac OS X zum Laufen?
0
andreas_g
andreas_g26.04.1119:40
Weiß niemand Rat?
0
MacMark
MacMark27.04.1109:40
Du brauchst noch "allegro". Und allegro benötigt cmake.
„@macmark_de“
0
MacMark
MacMark27.04.1110:37
Du brauchst auch noch ROM-Files laut http://idle-lisa-emu.sourceforge.net/

Ich habe es als Intel-32-Bit übersetzt:
http://www.macmark.de/files/idle.zip
Entpacke es in dem Verzeichnis, in dem auch das Makefile.unix liegt.

„@macmark_de“
0
andreas_g
andreas_g27.04.1115:43
Vielen Dank für die Bemühungen! Ich werde es am Abend ausprobieren (ROMs sind vorhanden).

Nur zum Verständnis: Um dein Binary auszuführen brauche ich zunächst die Allegro-Bibliothek (und um diese zu kompilieren wiederum cmake).

Wäre es theoretisch auch möglich, beim Kompilieren von IDLE ein App-Bundle zu erstellen und die Allegro-Bibliothek dort zu integrieren?
0
MacMark
MacMark27.04.1116:14
andreas_g
Nur zum Verständnis: Um dein Binary auszuführen brauche ich zunächst die Allegro-Bibliothek (und um diese zu kompilieren wiederum cmake).
Idle braucht zum Compilieren Allegro. Und Allegro benötigt cmake zum Compilieren.

Zum Ausführen benötigt Idle auch Allegro, was entweder systemweit installiert werden kann als dynamische Library oder als statische nur für eine Anwendung.
andreas_g
Wäre es theoretisch auch möglich, beim Kompilieren von IDLE ein App-Bundle zu erstellen und die Allegro-Bibliothek dort zu integrieren?

Ja, und auch praktisch. Allegro hat ein Tool "fixbundle" dabei, das dies kann. Mache ich heute Abend mal. Ansonsten könnte man das auch händisch mit Xcode machen.

„@macmark_de“
0
andreas_g
andreas_g27.04.1116:37
MacMark
Allegro hat ein Tool "fixbundle" dabei, das dies kann. Mache ich heute Abend mal.


Das würde mir eine Menge Arbeit ersparen

Dann werde einmal abwarten, bevor ich weitere Versuche anstelle.

Danke!
0
MacMark
MacMark27.04.1120:37
Die embeddable Version von Allegro widersetzt sich noch ihrer Erstellung. Muß noch etwas rumprobieren.
„@macmark_de“
0
andreas_g
andreas_g27.04.1122:37
Hätte nicht erwartet, dass es derart kompliziert ist. Aber wie gesagt, ich habe keine Erfahrung in diesem Bereich. Viel Glück beim Tüfteln!
0
MacMark
MacMark28.04.1112:28
Allegro ist nicht korrekt/aktuell beim Zusammenstellen seines Frameworks. Du wirst also vorläufig Allegro direkt übersetzen und installieren müssen gemäß http://alleg.sourceforge.net/stabledocs/en/build/cmake.html

CMake runterladen und installieren (hat Installer):
http://www.cmake.org/files/v2.8/cmake-2.8.4-Darwin-universal.dmg

Allegro 4.4.1 runterladen und entpacken:
http://sourceforge.net/projects/alleg/files/allegro/4.4.1.1/allegro-4.4.1.1.tar.gz/download

Im Verzeichnis von Allegro dann:
mkdir Build
cd Build
cmake ..
cd ..
sudo make install

Dann sollte "idle" aus meinem Download ausführbar sein.
„@macmark_de“
0
andreas_g
andreas_g28.04.1114:12
Schade! Aber da kann man wohl nichts machen, wenn der Wurm (bzw Bug) drin ist.

Danke jedenfalls für das Binary und die Anleitung!
Werde es demnächst testen.
0
MacMark
MacMark28.04.1114:12
Hier ist die idle.app, sie benötigt jedoch wahrscheinlich Allegro auf dem System wie im vorherigen Kommentar beschrieben.
„@macmark_de“
0
MacMark
MacMark28.04.1114:30
Hier ist ein etwas anderer Versuch mit idle_2.app.


„@macmark_de“
0
andreas_g
andreas_g28.04.1118:24
Danke für die weiteren Versuche!

Ich habe beide App-Bundles ohne Allegro getestet .. leider ohne Erfolg.

Allerdings scheint das zweite Bundle der Sache schon etwas näher zu kommen. Ich habe das Executable via TextEdit geöffnet um nachzusehen, welche Bibliotheken verlinkt sind.
Im Gegensatz zum ersten Bundle, finde ich im zweiten das inkludierte Allegro Framework
@executable_path/../Frameworks/Allegro.framework/Versions/4.4.1/Allegro
allerdings auch, wie im ersten Bundle, die Bibliothek "liballeg.4.4.dylib".


Der zweite Build crasht mit dieser Meldung:

Exception Type:  EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000
Crashed Thread:  0

Dyld Error Message:
  Library not loaded: liballeg.4.4.dylib
  Referenced from: /Users/andi/Desktop/idle_2.app/Contents/MacOS/idle
  Reason: image not found

Binary Images:
0x8fe00000 - 0x8fe4162b  dyld 132.1 (???) <1C06ECD9-A2D7-BB10-AF50-0F2B598A7DEC> /usr/lib/dyld

Vielleicht würde es funktionieren, wenn "liballeg.4.4.dylib" nicht mehr verlinkt wäre?
0
MacMark
MacMark28.04.1122:01
Könnte sein. Ich schaue mal, was ich noch machen kann. Ist nur etwas kompliziert die Geschichte, weil Allegro und idle beide ihre eigenen Buildskripte verwenden, die in Allegros Fall auch noch selbst generiert werden mit CMake. Ich mußte schon einige Bugs beheben, damit es überhaupt soweit kommt. Das Vorhandensein des Frameworks wurde falsch geprüft und veraltete Pfade zu Developer-Binaries genutzt.

Wenn Du der Anleitung von "28.04.11 12:28" ab "CMake runterladen und …" folgst, dann müßte die App schon bei Dir lauffähig sein.

Allegro hat angekündigt, bald ein fertig compiliertes OS X-Framework bereitstellen zu wollen.
„@macmark_de“
0
andreas_g
andreas_g29.04.1109:39
Das Ganze scheint wirklich sehr aufwändig zu werden. Möchte dir damit natürlich nicht weiter die Zeit stehlen.
Hätte kein Problem damit, es an diesem Punkt einfach sein zu lassen.

Andernfalls hätte ich noch diesen möglicherweise hilfreichen Thread gefunden:
http://www.allegro.cc/forums/reply/600869

All zu weit dürftest du ja nicht vom Ziel entfernt sein. Aber leider treten auch gegen Ende gelegentlich unüberwindbare Hürden auf ...
0
MacMark
MacMark29.04.1111:41
Nun geht es anscheinend: idle_3.app 
Habe das Buildskript für idle dafür nochmal weiter angepaßt.

Die gelinkten Libs kannst Du Dir komfortabler ansehen mit otool:
KeyWest:lisa macmark$ otool -L idle_3.app/Contents/MacOS/idle 
idle_3.app/Contents/MacOS/idle:
    /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0)
    @executable_path/../Frameworks/Allegro.framework/Versions/4.4.1/Allegro (compatibility version 4.4.0, current version 4.4.1)
    /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.10)
    /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 227.0.0)
    /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 44.0.0)
    /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 550.42.0)
    /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (compatibility version 1.0.0, current version 38.0.0)
    /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 751.53.0)
    /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1038.35.0)
„@macmark_de“
0
andreas_g
andreas_g29.04.1118:15
Tausend Dank für den weiteren Versuch!

Die schlechte Nachricht zuerst? Es funktioniert nicht!

Die gute Nachricht:
Das Programm startet! Ich habe einige Zeit gebraucht, um herauszufinden wo ich die ROM-Files (booth.hi, booth.lo) ablegen muss. Idle sucht sie im App-Bundle unter Idle.app/Contents/Resources/bios. Zusätzlich wird noch die Datei "vidstate.rom" benötigt (wird mit dem Quellcode mitgeliefert), die ebenfalls im Ordner bios abzulegen ist. Die ROM-Files werden erkannt und es wird auch erfolgreich ein Festplatten-Image erstellt. Hier ist allerdings schon eine seltsame Bildschirmausgabe zu erkennen.


Sobald der Emulator die Kontrolle über die Maus übernimmt, wird der Mauszeiger in der Mitte des Bildschirms gefangen. Der Mauszeiger ist in allen Programmen (auch Finder, iTunes, etc) "gefangen". Es steht zwar noch ein zweiter, etwas seltsamer und sehr langsamer Mauszeiger innerhalb von des Idle-Fensters zur Verfügung, es ist aber nicht möglich zu Klicken und es ist auch keine Tastatureingabe möglich.


Um den Emulator zu verlassen hilft nur Force Quit. Dann ist auch die Maus wieder "befreit".

Es tut mir leid! Leider habe ich keine besseren Nachrichten!
Trotzdem Danke!
0
Cmon
Cmon29.04.1123:14
Falls das mal noch jemand hinkriegt…ich wär also brennend an einer Funktionierenden Verison (alle Files in einem ZIP) intressiert *g*
„Bei MTN seid 2003…wie die Zeit vergeht!“
0
MacMark
MacMark30.04.1119:30
Wo bekommt man diese ROM-Files her?
„@macmark_de“
0
_mäuschen
_mäuschen01.05.1100:27

2_ROMsCollection_Info.txt @

0
andreas_g
andreas_g01.05.1110:05
MacMark, du hast Post!
0
andreas_g
andreas_g10.05.1107:52
MacMark, konntest du den Emulator mit den ROMs testen?

Gibt es noch Hoffnung für einen funktionierenden OS X Build, oder muss man das Ganze abhaken?
0
MacMark
MacMark10.05.1116:40
Probiere ich noch aus.
„@macmark_de“
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.