Zum Inhalt springen

Installation

Diese Anleitung beschreibt, wie du Steel baust und ausführst.

  • Rust Nightly Toolchain – Steel nutzt Features der Rust 2024 Edition
  • 64-Bit-Betriebssystem – Linux, macOS oder Windows
  • Git – Zum Klonen des Repositories

Falls du Rust noch nicht installiert hast, nutze rustup:

Terminal-Fenster
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Steel benötigt die Nightly-Toolchain. Das Repository enthält eine rust-toolchain.toml, die automatisch die richtige Version auswählt.

Terminal-Fenster
# Das Repository klonen
git clone https://github.com/Steel-Foundation/SteelMC.git
cd SteelMC
# Im Release-Modus bauen (empfohlen)
cargo build --release
# Du findest die fertige Binary unter target/release/steel
BefehlZweck
cargo buildDebug-Build (schnellere Kompilierung, langsamere Laufzeit)
cargo build --releaseRelease-Build (langsameres Kompilieren, optimiert)
cargo checkSchnelle Syntax- und Typprüfung
cargo testFührt die Testsuite aus
cargo clippyStartet den Linter

Steel unterstützt optionale Build-Features, die mit --features aktiviert werden können:

Terminal-Fenster
# EDeadlock-Erkennung aktivieren (nur Debug)
cargo build --features deadlock_detection
# Heap-Profiling mit dhat aktivieren
cargo build --features dhat-heap
# Den Standard-mimalloc-Allocator deaktivieren
cargo build --no-default-features

Verfügbare Features:

FeatureBeschreibung
mimallocVerwendet den mimalloc-Allocator (standardmäßig aktiviert)
deadlock_detectionAktiviert parking_lot Deadlock-Erkennung zum Debuggen von Lock-Problemen
dhat-heapAktiviert Heap-Profiling mit dhat

Deadlock Detection ist besonders während der Entwicklung hilfreich, wenn es zu Hängern kommt oder Lock-Probleme vermutet werden. Wenn aktiviert, erkennt parking_lot mögliche Deadlocks und bricht mit Diagnoseinformationen ab.

Terminal-Fenster
# Direkt mit cargo ausführen (Debug-Modus)
cargo run
# Mit Release-Optimierungen ausführen
cargo run --release
# Oder die gebaute Binärdatei direkt starten
./target/release/steel

Der Server wird:

  1. Eine Datei config/steel_config.json5 erstellen, falls sie nicht existiert
  2. Standardmäßig an 0.0.0.0:25565 binden
  3. Minecraft-1.21.11-Clients akzeptieren

Vorgebaute Binaries sind auf der Seite GitHub Releases verfügbar für:

  • Linux (x86_64)
  • Windows (x86_64)
  • macOS (x86_64 und ARM)

Nachdem Steel läuft, gehe weiter zu Configuration, um deinen Server anzupassen.