# Ubuntu / WSL ```bash sudo apt update # basic build tools such as gcc sudo apt install build-essential # meson and ninja for building sudo apt install meson ninja-build # glfw sudo apt install libglfw3 libglfw3-dev # glew sudo apt install libglew-dev ``` # WSL Für grafische Anwendungen wird WSL 2 benötigt ## Virtualisierung Aktivieren Virtualisierung kann über die Powershell oder im BIOS aktiviert werden und ist notwendig für WSL 2 ``` dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart ``` Anschließend Windows neustarten ## WSL Updaten ``` # aktuelle Version anzeigen wsl -l -v # Version ändern wsl --set-version 2 # Updaten wsl --update ``` ## Hilfreiche Links - [Installieren von Linux unter Windows mit WSL - Microsoft Learn](https://learn.microsoft.com/de-de/windows/wsl/install) - [Using c++ and WSL in VS Code](https://code.visualstudio.com/docs/cpp/config-wsl) - [Diagnosing "cannot open display" type issues in WSLg](https://github.com/microsoft/wslg/wiki/Diagnosing-%22cannot-open-display%22-type-issues-with-WSLg) # Windows Native ## MSYS2 Installation MSYS2 dient als Entwicklungsumgebung und stellt Tools wie Make und gcc zur Verfügung [Download und Installationsanleitung](https://www.msys2.org/) Alle folgenden Schritte sollten im MSYS2 MINGW64 Terminal ausgeführt werden. ## Libraries installieren Package Datenbank synchronisieren ``` $ pacman -Syu ``` Libraries installieren ``` $ pacman -S mingw-w64-x86_64-glfw mingw-w64-x86_64-glew ``` ## Meson installieren (Empfehlung) ``` $ pacman -S mingw-w64-x86_64-meson ``` ## gcc installieren ``` $ pacman -S mingw-w64-x86_64-gcc ``` ## git installieren (Empfehlung) ``` $ pacman -S git ``` ## mingw64 Pfad zur "Path" Umgebungsvariable hinzufügen Dieser Schritt ist nur notwendig, wenn das Programm auch ohne MSYS2 gestartet werden soll. ``` C:\msys64\mingw64\bin ``` - Windows Suche -> "Umgebungsvariablen" eintippen - -> "Umgebungsvariablen..." - -> "Path" -> "Bearbeiten" -> "Neu" -> Pfad einfügen - Neue Umgebungsvariablen werden erst nach Programm Neustart übernommen # Building and running ``` meson setup build meson compile -C build ./build/cg1 ```