adminslog/dokus/rust/rust-toolchain-msvc.md

153 lines
4.7 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Rust-Toolchain mit MSVC unter Windows einrichten
Dieser Artikel beschreibt die vollständige Einrichtung einer produktionsfähigen Rust-Toolchain mit **MSVC (Microsoft Visual C++)** unter **Windows**, einschließlich Erstellung einer `.exe`-Datei aus einem Beispielprogramm.
## Inhalt
- [Rust-Toolchain mit MSVC unter Windows einrichten](#rust-toolchain-mit-msvc-unter-windows-einrichten)
- [Inhalt](#inhalt)
- [Voraussetzungen](#voraussetzungen)
- [1. Rust installieren](#1-rust-installieren)
- [2. Visual Studio Build Tools installieren](#2-visual-studio-build-tools-installieren)
- [Schritt-für-Schritt](#schritt-für-schritt)
- [3. Umgebungsvariablen setzen (optional)](#3-umgebungsvariablen-setzen-optional)
- [4. Beispielprojekt erstellen](#4-beispielprojekt-erstellen)
- [5. Projekt kompilieren](#5-projekt-kompilieren)
- [Debug-Build (schnell, nicht optimiert)](#debug-build-schnell-nicht-optimiert)
- [Release-Build (optimiert, kleine `.exe`)](#release-build-optimiert-kleine-exe)
- [6. Optional: `.exe` testen](#6-optional-exe-testen)
- [7. Troubleshooting](#7-troubleshooting)
- [8. Alternative: Toolchain in einem Offline-Installer vorbereiten](#8-alternative-toolchain-in-einem-offline-installer-vorbereiten)
- [Zusammenfassung](#zusammenfassung)
- [Weiterführende Themen](#weiterführende-themen)
---
## Voraussetzungen
- Windows 10 oder 11 (64 Bit)
- Administratorrechte
- Mindestens 2GB freier Speicherplatz
## 1. Rust installieren
Lade das offizielle Rust-Installationsprogramm herunter und führe es aus:
<https://rustup.rs>
Beim Setup:
- **Toolchain wählen**: `default host triple: x86_64-pc-windows-msvc`
- Folge dem Assistenten, um `rustc`, `cargo` und `rustup` zu installieren.
Verifiziere die Installation:
```shell
rustc --version
cargo --version
```
## 2. Visual Studio Build Tools installieren
Die Rust-Toolchain mit MSVC benötigt den **"C++ Build Tools"**-Teil von Visual Studio.
### Schritt-für-Schritt
1. Lade den **Visual Studio Installer**:
- <https://visualstudio.microsoft.com/de/visual-cpp-build-tools/>
2. Wähle bei der Installation:
-**C++ Build Tools**
- Und in der rechten Spalte:
- ✅ "MSVC v14.x - VS 2022 C++ x64/x86-Buildtools"
- ✅ "Windows 10 SDK" oder "Windows 11 SDK" (je nach Zielsystem)
- ✅ "C++ CMake-Tools für Windows" (optional für CMake-Projekte)
3. Installiere alles und starte das System neu, falls verlangt.
## 3. Umgebungsvariablen setzen (optional)
Falls du die Buildtools über Kommandozeile verwenden willst, öffne:
```cmd
"C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\Build\vcvars64.bat"
```
Das setzt temporär alle notwendigen Umgebungsvariablen für den Build-Prozess.
## 4. Beispielprojekt erstellen
```cmd
cargo new hello_world
cd hello_world
```
Beispielcode in `src/main.rs`:
```rust
fn main() {
println!("Hallo Welt kompiliert mit MSVC!");
}
```
## 5. Projekt kompilieren
### Debug-Build (schnell, nicht optimiert)
```cmd
cargo build
```
### Release-Build (optimiert, kleine `.exe`)
```cmd
cargo build --release
```
Die fertige `.exe` liegt unter:
.\target\release\hello_world.exe
## 6. Optional: `.exe` testen
```cmd
.\target\release\hello_world.exe
```
## 7. Troubleshooting
- **Fehlermeldung `link.exe not found`?**
→ Build-Tools sind nicht korrekt installiert (siehe Schritt 2)
- **Fehlermeldung zu fehlendem SDK?**
→ Stelle sicher, dass du das passende Windows SDK mit installiert hast
- **MSVC und GNU Toolchain gleichzeitig installiert?**
→ Du kannst über `rustup` zwischen beiden wechseln:
```cmd
rustup show
rustup default stable-x86_64-pc-windows-msvc
```
## 8. Alternative: Toolchain in einem Offline-Installer vorbereiten
Wenn du das Setup auf mehreren Rechnern ohne Internetzugang durchführen möchtest, siehe [separater Artikel zur Erstellung eines Installationsmediums](./rust-offline-installation.md).
## Zusammenfassung
| Komponente | Aufgabe |
|------------------|----------------------------------|
| Rustup | Verwaltung von Toolchains |
| Cargo | Buildsystem und Paketmanager |
| MSVC Build Tools | C++-Compiler/Linker für Windows |
| `vcvars64.bat` | Aktiviert Build-Umgebung |
| `cargo build` | Erstellt `.exe` mit Rust und MSVC |
## Weiterführende Themen
- Einbindung von Ressourcen und Icons in die `.exe`
- Verwendung von `cc`/`bindgen` für C-Bindings
- Cross-Kompilierung mit `x86_64-pc-windows-gnu` oder Linux-Zielsystemen
- Automatisierter Build via Makefile oder PowerShell