Gzdoom unter Windows 10 kompilieren

Aus Gargi.org
Zur Navigation springen Zur Suche springen

gzdoom ist eine Weiterentwicklung des Spieleklassikers Doom ( ID Software ). Der mittlerweile freigegebene Quellcode wurde in diesem Projekt auf openGL portiert. Dieses Tutorial beschreibt, wie man die gzdoom Quellen unter Windows kompilieren kann. Zu der auszuführenden Datei benötigt man natürlich noch die doom.wad Datei, die man nicht frei erhält, sondern mit dem ursprünglichen Spiel gekauft werden müssen.

Das Tutorial wurde auf einem Windows 10 System erstellt, gilt aber auch für Windows 11.

Im ersten Schritt ladet die benötigten Programmpakete herunter.
Der zweite Schritt beschäftigt sich mit der Installation von GIT und das Herunterladen des Quellcodes.
Als Drittes installieren wir Visual Studio (2022).
Als Viertes wird CMAKE installiert und der Quellcode vorbereitet.
Der fünfte Schritt beschäftigt sich mit dem Kompilieren des Quellcodes und Zusammenstellen der benötigten Dateien.

Hinweise zum Komplettpaket:

Damit gzdoom spielbar wird müssen verschiedene Dateien in ein Verzeichnis kopiert werden (wir gehen am Schluss des Tutorials darauf ein). Das sind zum einen die kompilierten Dateien aus dem Tutorial, einige dlls und die doom.wad, die Ihr auf dem offiziellen Doom Installationsmedium findet. Die Doom.wad ist keine freie Datei, da hier alle Grafiken und Leveldateien hinterlegt sind und gehören nach wie vor ID Software. Für die WAD Dateien muss das Spiel nach wie vor gekauft werden.

Beim ersten Start wird dann im gleichen Verzeichnis eine gzdoom.ini angelegt, in welcher dann zukünftig alle Einstellungen gespeichert werden. Tipps zur Einstellung der Grafikoptionen (der erste Start sieht nicht besonders toll aus) findet Ihr hier: http://www.myslug.de/index.php?title=DOOM_auf_Linux#Grafikoptionen

Diese sind zwar für die Linux Variante geschrieben worden, gelten aber auch für die Windows Version.

Downloads

Folgende Pakete müssen heruntergeladen werden.

Eine aktuelle Version eines gzdoom Compiles https://forum.zdoom.org/viewforum.php?f=1

Nehmt hier die aktuelle Version. In meinem Fall die 64bit Variante. In der Zip Datei befinden sich neben den Lizenzdateien folgende dlls, die Ihr später zu Eurem fertigen Compile kopieren müsst. Normal dürfte das auch nur einmal gemacht werden müssen, da sich die dlls i.d.R. nicht oft verändern:

  • libsndfile-1.dll
  • openal32.dll
  • zmusic.dll

GIT für Windows https://git-scm.com/

CMAKE https://cmake.org/

Visual Studio https://www.visualstudio.com/de/downloads

GIT installieren und Quellcode herunterladen

Installiert GIT bitte als Admin. Nachdem Ihr der Lizenzbestimmung zustimmt ...


Im Nachfolgenden sind die Bilder etwas "outdated" Im Verlauf der Installation kommt es zu weiteren Abfragen, die Ihr im Grunde alle im Default überlasst. Bei einem Text Editor wählt bitte einen, den Ihr installiert habt. Ich empfehle Notepad++. Für das Kompilieren des Quellcodes müsst Ihr allerdings keinen Editor verwenden, das ist nur eine reine Standardabfrage. (Ergänzung April 2022)


... gebt Ihr den gewünschten Installationspfad an:

Bei der Auswahl der Komponenten genügen folgenden Kriterien:

Den Namen des Stratmenüordners könnt Ihr hier anpassen:

Im nächsten Schritt legen wir fest, dass wir GIT auch aus der regulären Kommandozeile unter Windows verwenden möchten. Das legt für Visual Studio auch automatisch die korrekte Umgebungsvariable an. Damit wird dann später bei gzdoom die korrekte git Version angezeigt.

Das lassen wir unverändert:

Auch der nächste Dialog bleibt so wie er ist:

Das hier ist für MSYS2 wichtig. Auch das einfach so übernehmen:

Im Folgendem einfach alles wie hier gezeigt übernehmen:

Wir sind nun beim letzten Dialogfenster angelangt. Die Voreinstellungen passen und wir klicken auf "Install":

Nachdem GIT installiert wurde öffnen wir ein Kommandozeilenfenster als normaler User und wechseln dort in das gewünschte Arbeitsverzeichnis, also dorthin, wo wir unseren Quellcode herunterladen möchten.

Dann holen wir uns den Code mittels

git clone https://github.com/coelckers/gzdoom gzdoom

Wartet einwenig, bis der Quellcode heruntergeladen ist.



Visual Studio installieren

Das ist recht einfach erledigt. Startet die Installationsdatei. Ihr wählt dann als Entwicklungsumgebung Desktopentwicklung mit C++ aus:

Die Installation dauert eine Weile, bis die Daten heruntergeladen sind (ca. 5GB).

CMAKE installieren und Quellcode vorbereiten

Installiert CMAKE und startet das Programm. Gebt dann das Verzeichnis Eures Quellcodes an und ebenso das Buildverzeichnis:

Wenn Ihr auf "Configure" klickt, werdet Ihr beim ersten Mal gefragt, mit welcher Entwicklerumgebung Ihr den Code übersetzen wollt. Ich wähle hier die 64bit Version von Visual Studio aus:

Wenn Ihr auf "Finish" klickt, generiert dann die benötigte Projektdatei, indem Ihr "Generate" auswählt:

Ihr müsst vorher nichts verändern, d.h. es werden dynamische Bibliotheken generiert.


gzdoom kompilieren und Dateien zusammenkopieren

Discs

Rare item. The original discs

Startet nun Visual Studio. Falls Ihr das zum ersten Mal macht, kann es sein, dass Ihr noch ein Microsoft Konto anlegen müsst. Sobald Ihr in der Entwicklungsumgebung seid, öffnet Euer gzdoom Projekt:

Wählt in dem Verzeichnis Eures Quellcodes die GZDoom.sln aus:

Bevor Ihr den Compile startet: Solltet Ihr einen Virenscanner installiert haben, der neue Programme scannt, bzw. Programmaktivitäten überwacht, kann es sein, dass dieser Euch in die Suppe spuckt und der Compile nicht fehlerfrei durchläuft. Sollte das der Fall sein, dann deaktiviert den Scanner für die Dauer des Compiles.

Startet den Compile, indem Ihr Erstellen -> ALL_BUILD erstellen auswählt:

Wenn alles gut gelaufen ist, dann sollten keine Fehler angezeigt werden:

(Vergesst nicht, jetzt wieder den Virenscanner zu aktivieren, falls abgestellt)

Die kompilierten Dateien befinden sich dann im Debug Verzeichnis Eures Repositories. Die gelb markierten werden dann benötigt. Kopiert diese in Euer gewünschtes gzdoom Spielverzeichnis:

Dazu kopiert die benötigten dlls aus einem fertigen gzdoom Paket:

Insgesamt habt Ihr dann folgende Dateien und Verzeichnisse in Eurem Spielverzeichnis:

fm_banks (Verzeichnis aus Compile)
soundfonts (Verzeichnis aus Compile)
brightmaps.pk3 (aus Compile)
game_support.pk3 (aus Compile)
game_widescreen_gfx.pk3 (aus Compile)
doom.wad (kommerziell, kaufen!)
gzdoomd.exe (aus Compile)
gzdoom.pk3 (aus Compile)
lights.pk3 (aus Compile)
zd_extra.pk3 (aus Compile)
gzdoom.sf2 (aus Compile)
libsndfile-1.dll (aus einem aktuellen fertigen Compile)
openal32.dll (aus einem aktuellen fertigen Compile)
zmusic.dll (aus einem aktuellen fertigen Compile)

Ihr startet gzdoom dann über die [B]gzdoom.exe[/B]

Quellcode aktualisieren

Ihr müsst natürlich nicht jedes Mal den Quellcode komplett neu herunterladen, wenn Ihr diesen aktualisieren wollt. Dazu geht einfach wieder in das Kommandozeilenfenster als normaler User und wechselt in Euer gzdoom Arbeitsverzeichnis (also richtig in das Verzeichnis rein).

Dann aktualisiert Ihr mittels git über folgenden Befehle:

git pull https://github.com/coelckers/gzdoom

Ihr bekommt dann einen Output in dieser Form:

In Visual Studio bereinigt erstmal den letzten Compile über den Menüpunkt "Erstellen -> ALL_Build bereinigen" . Dann stoßt Ihr den Compile wie gewohnt wieder an: "Erstellen -> ALL_BUILD erstellen" .

Die neue Versionsnummer seht Ihr dann im gzdoom Launcher:

Hinweis: Solltet Ihr nach einem Update einen Compilerfehler bekommen, dann löscht zuerst im VisualStudio die Projektdateien. Geht auf Erstellen und dann unter All Build -> bereinigen:

Sollte das nicht helfen, dann löscht das komplette Workdirectory und holt einen frischen Abzug über git - Hub. Danach mit cmake die Make-Datei neu erstellen, also im Grunde, als ob Ihr alles frisch einrichtet. Sollte auch das nichts nützen, dann ist eventuell tatsächlich ein Fehler vorhanden. Hier schaut Euch dann den Compiler Output nach wichtigen Hinweisen an.

Viel Spaß und happy dooming!!!

Euer
Pierre


Mit Wirkung zum 31. August 2011 hat die Bundesprüfstelle für jugendgefährdende Medien die Indizierung der Spiele Doom und Doom 2 aufgehoben.


Links: id Software: http://www.idsoftware.com/
Projektseite: https://zdoom.org/index
zdoom wiki: http://zdoom.org/wiki/Compile_ZDoom_on_Windows
gzdoom Forum: http://forum.drdteam.org/viewforum.php?f=22
zdoom Forum: https://forum.zdoom.org/
CMAKE: http://www.cmake.org/
OpenAL Soft: http://kcat.strangesoft.net/openal.html
libsndfile: http://www.mega-nerd.com/libsndfile/
libmpeg: http://mpg123.orgis.org/