Sonntag, 5. September 2010

AFUTrainer 3.0 unter Mac OS X installieren

Das Open-Source-Programm AFUTrainer ist eine gute Hilfe beim Lernen für die Amateurfunk-Prüfung. Leider gibt es auf der Download-Seite keine ausführbare Datei für Mac OS X.

Da die Installation bei mir etwas fummelig war, hier eine Kurzanleitung:

Zum Selbstkompilieren muss man zunächst den Quellcode von der AFU-Trainer-Homepage herunterladen und entpacken.

Zusätzlich braucht man ein QT-SDK für OSX und die zlib-Bibliothek zum Entpacken von ZIP-Archiven. Last but not least müssen natürlich die Developer-Tools von der OSX-DVD installiert sein.

Zunächst das QT-SDK installieren.

Im entpackten AFUTrainer-Quellcodeverzeichnis gibt es einen Ordner zlib. Dieser enthält leider nur eine Windows-Bibliothek, hilft also unter OSX nicht wirklich weiter. Diesen Ordner daher löschen und durch den zlib-x.x.x-Ordner aus den eben heruntergeladenen zlib-Quellen ersetzen. (Den zlib-x.x.x-Ordner dazu in zlib umbenennen!)

In der Komandozeile in das zlib-Verzeichnis wechseln und ./configure aufrufen. Ich glaube, ich habe dabei auch den Parameter --static angegeben.

Das configure-Skript erstellt ein Makefile, das man nun im Editor öffnet. Die Zeile "CFLAGS=-O3" in "CFLAGS=-O3 -m32" ändern. Dies ist notwendig, da die Bibliothek standardmäßig als 64-Bit-Version kompiliert wird, was dazu führt, dass sie nicht zum restlichen Code gelinkt werden kann. Das "-m32"-Flag erzwingt die Erstellung einer 32-Bit-Version.

Die Bibliothek anschließend mit "make" übersetzen.

Nun eine Verzeichnisebene höher wechseln (zurück das AFUTrainer-Quellcodeverzeichnis) und mittels "qmake" eine Projektdatei für XCode erstellen. Die dabei erscheinende Warnung über "qt" kann ignoriert werden. Mit Doppelklick auf "afutrainer.xcodeproj" im Finder sollte XCode starten und das Projekt laden.

Die Projekteinstellungen oben links von "Debug" auf "Release" umstellen.

Nun unter Project->Edit Active Target "afutrainer" zum Abschnitt "Linking" runterscrollen und das Feld "Other Linker Flags" suchen. Dort müssen die zusätzlichen Flags "-lz" und "-Lzlib" ergänzt werden. Ersteres Flag linkt die libz hinzu, letzteres erklärt dem Compiler, dass besagt Bibliothek im Unterverzeichnis "zlib" zu finden ist.

Damit sollte sich das Projekt durch Klicken auf "Build" erstellen lassen. Die ausführbare Datei befindet sich danach unter build/Release und kann von dort in den Programmordner verschoben werden.

Wer es probiert hat, möge mal einen Kommentar hier hinterlassen. Da ich die Anleitung nur grob aus dem Gedächtnis geschrieben habe, mag ich vielleicht das eine oder andere Detail noch vergessen haben.

Update vom 28.04.2011: Siehe auch Patch für AFUTrainer 3.0.

Update vom 11.08.2017: Die Qt-Bibliothek wird nicht länger von Nokia betreut und ist daher umgezogen. Unter https://info.qt.io/download-qt-for-application-development kann die die kostenlose Open-Source-Version von Qt heruntergeladen werden. Da der AfuTrainer nicht mehr aktiv weiterentwickelt wird, kann es jedoch sein, dass am Quellcode Anpassungen nötig sind um mit einer aktuellen Qt-Version zusammenzuarbeiten. Der Nachfolger des AfuTrainers ist der HamRadioTrainer, der laut Homepage mittels Wine/Crossover auch unter OSX laufen soll. Dies ist vermutlich die einfachere Lösung als den AfuTrainer selbst zu bauen. Da ich keinen Mac/OSX mehr in Benutzung habe, kann ich dabei leider nicht mehr helfen.

Kommentare:

HB3YDM hat gesagt…

Hallo Danke Erstmal für die Tipps,
Wollte mitteilen das der link zum QT Download nicht mehr geht???

pcxHB hat gesagt…

Ich habe unten im Artikel einen Nachtrag ergänzt.