Article: Crosscompile ioquake3 als eine Windows 64 bit Version unter openSUSE 12.2

Auch wenn sich der Threadtitel kompliziert anhört, die Ausführung ist dennoch einfacher als man glaubt. Ziel ist es, das quelloffene ioquake 3 (ein Branch der Quake 3 Arena Sourcen, siehe Link im Nachgang des Artikels) für Windows in einer 64bit Variante zu kompilieren.

Basis hierfür ist ein **openSUSE 12.2 **in einer 64bit Version.

Als erstes installieren wir dafür einen 64bit Crosscompiler. Dazu legen wir eine neue Installationsquelle via YAST an. Bei den Software Repositories legt ein neues Repository an, indem Ihr folgende URL (als http Variante) angebt:

http://download.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_12.2/

Die Änderung speichert dann ab. Jetzt geht Ihr auf Software installieren und installiert folgende Pakete:

mingw64-cross-binutils
mingw64-cross-gcc
mingw64-headers
mingw64-libSDL
mingw64-libcurl
mingw64-openal-soft

Das zieht Euch noch einige Pakete nach.

Legt Euch nun irgendwo ein neues Verzeichnis an, in dem Ihr Eure fertigen Dateien später kopiert, z.B. ioquake3. Darunter legt zwei weitere Verzeichnisse an: **baseq3 **und missionpack.
Kopiert danach zunächst folgende dlls nach Euer ioquake3 Verzeichnis:

/usr/x86_64-w64-mingw32/sys-root/mingw/bin/libcurl-4.dll
/usr/x86_64-w64-mingw32/sys-root/mingw/bin/OpenAL32.dll
/usr/x86_64-w64-mingw32/sys-root/mingw/bin/SDL.dll

Die letztere **SDL.dll **benennt in SDL64.dll um.

Danach wechselt in ein beliebiges Arbeitsverzeichnis auf der Konsole und zieht Euch die ioquake3 sourcen herunter:

svn co svn://svn.icculus.org/quake3/trunk quake3

Wechselt in das neue Verzeichnis quake3:

cd quake3

Dann stosst den Kompile an:

./cross-make-mingw64.sh ARCH=x64

Dieser sollte dann sauber durchlaufen. Wenn alles okay ist, dann liegen Eure neuen Daten unter /quake3/build/release-mingw32-x64

Aus dem dortigen Verzeichnis kopiert folgende Dateien in Euer** ioquake3 **Verzeichnis:

ioq3ded.x64.exe
ioquake3.x64.exe
renderer_opengl1_x64.dll

Aus dem baseq3 Verzeichnis dann in das ioquake3/baseq3 Verzeichnis:

cgamex64.dll
qagamex64.dll
uix64.dll

Aus dem missionpack Verzeichnis dann in das ioquake3/missionpack Verzeichnis:

cgamex64.dll
qagamex64.dll
uix64.dll

Das war es im Grunde auch. Ihr benötigt dann natürlich noch die pak0.pak Datei von Eurer Original Quake 3 CD. Unter Windows kopiert dann alles entsprechend zusammen und startet das Spiel mit ioquake3.x64.exe .

That’s it. Happy Quakin!

cu
Pierre “Gargi” Kretschmer

Ursprünglich erschienen auf meiner Homepage: Gargi.org
ioquake3 Projektpage: http://www.ioquake3.org
pak Patches: Download ioquake3 – ioquake3