MSYS2 ist eine Windows Umgebung die ein Unix-ähnliches Terminal (bash, coreutils) bietet, einen Paketmanager (pacman) mitbringt und mehrere Toolchain-„Welten“ hat (z. B. UCRT64, MINGW64, CLANG64) in denen man native Windows-Programme kompiliert.
MSYS2 Installer auf msys2.org. Die verschiedenen Umgebungen/Toolchains liegen im Installationsordner. Man kann aber auch den PATH anpassen und auf die entsprechenden Ordner lenken.
# Erstes Update pacman -Syu # Wenn MSYS2 danach verlangt das Terminal zu schließen: schließen und neu öffnen, dann nochmal. Damit ist System + Paketdatenbank sauber aktualisiert.Suchen pacman -Ss cmake # Installieren pacman -S <paketname> # Entfernen (inkl. ungenutzter Abhängigkeiten) pacman -Rns <paketname> # Installierte Pakete anzeigen pacman -Q pacman -Syu
pacman -S mingw-w64-x86_64-gcc pacman -S mingw-w64-x86_64-cmake pacman -S mingw-w64-x86_64-ninja pacman -S mingw-w64-x86_64-python pacman -S mingw-w64-x86_64-gdb
In einer UCRT64-Shell installiert man typischerweise Pakete mit Präfix. Z.B: (UCRT)
pacman -S mingw-w64-ucrt-x86_64-gcc pacman -S mingw-w64-ucrt-x86_64-cmake pacman -S mingw-w64-ucrt-x86_64-ninja pacman -S mingw-w64-ucrt-x86_64-python pacman -S mingw-w64-ucrt-x86_64-gdb
Beispiel
pacman -S --needed mingw-w64-x86_64-toolchain cat > hello.c <<'EOF' #include <stdio.h> int main() { puts("Hello from MSYS2!"); return 0; } EOF gcc hello.c -o hello.exe ./hello.exe
Typische Tools installieren (Git, curl, etc.)
# In UCRT64 (Tools in der UCRT-Umgebung)
pacman -S mingw-w64-ucrt-x86_64-git mingw-w64-ucrt-x86_64-curl mingw-w64-ucrt-x86_64-wget mingw-w64-ucrt-x86_64-unzip
# In MSYS ("Unix-Tools" unabhängig vom Compiler)
pacman -S git curl wget unzip