# Anleitung: Legacy Clonk Kompilieren auf Fedora Linux

**URL:** https://forum.clonkspot.org/t/anleitung-legacy-clonk-kompilieren-auf-fedora-linux/1299
**Category:** LegacyClonk
**Created:** [17. Juli 2019 um 21:15 UTC](https://forum.clonkspot.org/t/anleitung-legacy-clonk-kompilieren-auf-fedora-linux/1299 "2019-07-17T21:15:03Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![manuelclonk](https://forum.clonkspot.org/letter_avatar_proxy/v4/letter/m/b9bd4f/32.png) [@manuelclonk](https://forum.clonkspot.org/u/manuelclonk)
#### Post date: [17. Juli 2019 um 21:15 UTC](https://forum.clonkspot.org/t/anleitung-legacy-clonk-kompilieren-auf-fedora-linux/1299/1 "2019-07-17T21:15:03Z")

</div>

Legacy Clonk ist eine mega coole Sache, großes danke an die Entwickler!!  
Hier mal noch eine Anleitung zum kompilieren auf Fedora (ohne Update Funktion), falls es jemand brauchen kann. Anwendung auf eigene Gefahr!

# Install Libraries

```auto
sudo dnf install freetype-devel libjpeg-devel libpng-devel openssl-devel zlib-devel mesa-libGL-devel glew-devel freeglut-devel libXpm-devel SDL2_mixer-devel libXxf86vm-devel gtk2-devel libnotify-devel

```

# Clone Repository

```auto
git clone https://github.com/legacyclonk/LegacyClonk.git
cd LegacyClonk

```

# Make!

```auto
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo . -DWITH_DEVELOPER_MODE=ON
make

```

Dann cr\_game\_linux.tar.bz2 von [http://www.clonk.de](http://www.clonk.de) downloaden und extrahieren.  
Die Dateien „c4group“ und „clonk“ von dem Ordner LegacyClonk/ in den downgeloadeten Ordner kopieren.

Dann clonk starten via cd in den gedownloadeten Ordner und  
./clonk

**Achtung:** Bei wiederholten kompilieren nach Fehler eventuell CMakeCache.txt löschen falls vorhanden.

(getested auf Fedora 37)

---

<div class="post-metadata">

### Author: ![Der\_Tod](https://forum.clonkspot.org/letter_avatar_proxy/v4/letter/d/8797f3/32.png) [@Der\_Tod](https://forum.clonkspot.org/u/Der_Tod)
#### Post date: [19. Juli 2019 um 09:50 UTC](https://forum.clonkspot.org/t/anleitung-legacy-clonk-kompilieren-auf-fedora-linux/1299/2 "2019-07-19T09:50:48Z")

</div>

Danke für die Anleitung.

Für den Editormodus der Engine (/console) müsste noch `-DWITH_DEVELOPER_MODE=ON` bei den cmake-Argumenten ergänzt werden.

Hier noch eine kleine Verbesserungsmöglichkeit:  
Es ist praktischer wenn man das Kompilieren in einen eigenen Ordner macht. Dadurch kann man unter anderem mehrerere Konfigurationen nebeneinander kompilieren oder bei Problemen einfach den ganzen Ordner löschen.

Dazu muss man vor dem Aufruf von cmake den Ordner erstellen und hinein navigieren:

```auto
mkdir build
cd build

```

Dann noch beim cmake-Aufruf den Pfad zu den Quelldateien anpassen, der Rest funktioniert gleich:  
`cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWITH_DEVELOPER_MODE=ON`

Beim Kopieren dann nur nicht vergessen, in den Unterordner zu schauen.

---

<div class="post-metadata">

### Author: ![manuelclonk](https://forum.clonkspot.org/letter_avatar_proxy/v4/letter/m/b9bd4f/32.png) [@manuelclonk](https://forum.clonkspot.org/u/manuelclonk)
#### Post date: [22. Dezember 2019 um 19:45 UTC](https://forum.clonkspot.org/t/anleitung-legacy-clonk-kompilieren-auf-fedora-linux/1299/3 "2019-12-22T19:45:14Z")

</div>

Unter Fedora 30 scheint es unter Wayland noch Probleme zu geben, X-Org läuft ohne Probleme, unter Wayland passiert folgendes:

```auto
[20:40:04] Command line: 
[20:40:04] ""
[20:40:04] LegacyClonk 
[20:40:04] Version: 4.9.10.8 [338] linux64
[20:40:04] Size of GammaRamp is 0, not 256
[20:40:04] Using OpenGL...
X Error of failed request: BadValue (integer parameter out of range for operation)
  Major opcode of failed request: 151 (XFree86-VidModeExtension)
  Minor opcode of failed request: 18 (XF86VidModeSetGammaRamp)
  Value in failed request: 0x1600007
  Serial number of failed request: 267
  Current serial number in output stream: 268
double free or corruption (fasttop)
4.9.10.8 [338] : Caught signal SIGABRT
./clonk[0x65d024]
/lib64/libc.so.6(+0x37ec0)[0x7fb2350f2ec0]
/lib64/libc.so.6(gsignal+0x145)[0x7fb2350f2e35]
/lib64/libc.so.6(abort+0x127)[0x7fb2350dd895]
/lib64/libc.so.6(+0x7b08f)[0x7fb23513608f]
/lib64/libc.so.6(+0x8240c)[0x7fb23513d40c]
/lib64/libc.so.6(+0x83e74)[0x7fb23513ee74]
./clonk[0x67e079]
./clonk[0x67e117]
./clonk[0x67e01f]
./clonk[0x67e417]
/lib64/libc.so.6(+0x3a680)[0x7fb2350f5680]
/lib64/libc.so.6(on_exit+0x0)[0x7fb2350f57c0]
/lib64/libX11.so.6(+0x492cb)[0x7fb2356622cb]
/lib64/libX11.so.6(_XError+0x122)[0x7fb235662402]
/lib64/libX11.so.6(+0x46297)[0x7fb23565f297]
/lib64/libX11.so.6(+0x4633d)[0x7fb23565f33d]
/lib64/libX11.so.6(_XReply+0x240)[0x7fb2356602b0]
/lib64/libX11.so.6(XGetGeometry+0x92)[0x7fb235644672]
./clonk[0x6768aa]
./clonk[0x676a5b]
./clonk[0x673bb6]
./clonk[0x66ad97]
./clonk[0x66af7c]
./clonk[0x440798]
./clonk[0x67ceb3]
./clonk[0x43ee3d]
/lib64/libc.so.6(__libc_start_main+0xf3)[0x7fb2350def43]
./clonk[0x43efae]

```

Als Workaround kann man beim Loginscreen „Gnome with Xorg“ etc. auswählen.

---

<div class="post-metadata">

### Author: ![Der\_Tod](https://forum.clonkspot.org/letter_avatar_proxy/v4/letter/d/8797f3/32.png) [@Der\_Tod](https://forum.clonkspot.org/u/Der_Tod)
#### Post date: [26. Dezember 2019 um 19:31 UTC](https://forum.clonkspot.org/t/anleitung-legacy-clonk-kompilieren-auf-fedora-linux/1299/4 "2019-12-26T19:31:18Z")

</div>

Genau genommen gibt es 2 Probleme.  
Das schlimmere der beiden ist, dass LC Wayland nicht unterstützt.  
Das andere ist, dass Fehlerbehandlung vernachlässigt wurde und es deswegen abstürzt, anstatt eine hilfreiche Fehlermeldung auszugeben.  
Es sollte allerdings unter XWayland laufen, auch wenn ich nicht weiß wie man das erzwingt.

**Edit** : Ich habs gerade probiert. Es startet eh automatisch in XWayland, allerdings funktioniert dann irgendwas nicht richtig.

---

<div class="post-metadata">

### Author: ![Der\_Tod](https://forum.clonkspot.org/letter_avatar_proxy/v4/letter/d/8797f3/32.png) [@Der\_Tod](https://forum.clonkspot.org/u/Der_Tod)
#### Post date: [30. Dezember 2019 um 16:42 UTC](https://forum.clonkspot.org/t/anleitung-legacy-clonk-kompilieren-auf-fedora-linux/1299/5 "2019-12-30T16:42:33Z")

</div>

Mit diesem [Commit](https://github.com/legacyclonk/LegacyClonk/commit/86eff685f6e97d8e33cd3081900fc86e24c1f218) geht es bei mir unter XWayland. Kommt dann mit [338].

---

<div class="post-metadata">

### Author: ![manuelclonk](https://forum.clonkspot.org/letter_avatar_proxy/v4/letter/m/b9bd4f/32.png) [@manuelclonk](https://forum.clonkspot.org/u/manuelclonk)
#### Post date: [6. September 2022 um 15:39 UTC](https://forum.clonkspot.org/t/anleitung-legacy-clonk-kompilieren-auf-fedora-linux/1299/6 "2022-09-06T15:39:22Z")

</div>

Habs heute mal auf Fedora 35+Wayland kompiliert und erfolgreich gestartet und noch paar Pakete dazugenommen. Hier nochmal die komplette Anleitung. Eventuall kann jemand was damit anfangen.  
Anwendung auf eigene Gefahr!

# Dependencies installieren

```auto
# Install required packages for compilation
sudo dnf install freetype-devel libjpeg-devel libpng-devel openssl-devel zlib-devel mesa-libGL-devel glew-devel freeglut-devel libXpm-devel SDL2_mixer-devel SDL2_mixer libXxf86vm-devel gtk2-devel libnotify-devel

```

# Build

```auto
# Clone git repository and build clonk
git clone https://github.com/legacyclonk/LegacyClonk.git
cd LegacyClonk
mkdir build
cd build

```

Dann Clonk Dateien Objects.c4d etc. und Systemdatein aus dem planet Ordner (z.b. System.c4g etc.) in ./build Ordner kopieren und starten

```bash
XMODIFIERS=""; ./clonk

```

Für console alternativ

```auto
XMODIFIERS=""; ./clonk /console

```

---

<div class="post-metadata">

### Author: ![Fulgen](https://forum.clonkspot.org/letter_avatar_proxy/v4/letter/f/f04885/32.png) [@Fulgen](https://forum.clonkspot.org/u/Fulgen)
#### Post date: [23. September 2022 um 09:18 UTC](https://forum.clonkspot.org/t/anleitung-legacy-clonk-kompilieren-auf-fedora-linux/1299/7 "2022-09-23T09:18:26Z")

</div>

> [@manuelclonk](#):
>
> ```auto
> XMODIFIERS=""; ./clonk
> 
> ```
> 
> Für console alternativ
> 
> ```auto
> XMODIFIERS=""; ./clonk /console
> 
> ```

Wird in LC nicht mehr gebraucht.
