-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Compilation de DE
Kompilierung ist der Prozess zur Erstellung von ausführbaren Dateien. Dies ist ratsam, wenn Sie Ihre eigenen Änderungen zu ASF hinzufügen wollen, oder wenn Sie aus irgendeinem Grund den ausführbaren Dateien der offiziell bereitgestellten Versionen nicht vertrauen. Wenn Sie ein einfacher Benutzer und kein Entwickler sind, möchten Sie höchstwahrscheinlich bereits vorkompilierte Binärdateien verwenden. Wenn Sie aber eigenen Dateien verwenden oder etwas Neues lernen möchten, lesen Sie bitte hier weiter.
ASF kann auf allen momentan unterstützten Plattformen kompiliert werden, solange Sie Zugriff auf die benötigten Programme haben.
Unabhängig von der Plattform benötigen Sie die vollständige .NET Core SDK (nicht nur Runtime), um ASF zu kompilieren. Eine Installationsanleitung finden Sie auf der .NET Core Installationsseite. Es muss die passende .NET Core SDK-Version für Ihr Betriebssystem installiert sein. Nach erfolgreicher Installation sollte der Befehl dotnet
funktionieren und betriebsbereit sein. Sie können mit dotnet --info
überprüfen ob es funktioniert. Stellen Sie sicher, dass Ihr .NET Core SDK mit den ASF Runtime-Anforderungen übereinstimmt.
Sofern Ihr .NET Core SDK funktionsfähig und in der entsprechenden Version ist, navigieren Sie einfach zum Quell-ASF-Verzeichnis (geklont oder heruntergeladen und entpacktes ASF-Repository) und führen Sie folgendes aus:
dotnet publish ArchiSteamFarm -c "Release" -f "net5.0" -o "out/generic"
Für Linux/OS X als Zielplattform können Sie stattdessen das Skript cc.sh
verwenden, was dasselbe in etwas komplexerer Weise tut.
Wenn die Kompilierung erfolgreich beendet wurde, finden Sie Ihr ASF in der source
Version im ArchiSteamFarm/out/generic
Verzeichnis. Dies gleicht sich mit dem offiziellen generic
ASF-Build, nur ist hier der UpdateChannel
und UpdatePeriod
auf 0
gesetzt, womit ein überschreiben des Selbst-Builds bis zur nächsten Kompilierung vermieden wird.
Sie können auch das betriebssystemspezifische .NET Core Paket erstellen, falls es einen bestimmten Grund dazu gibt. Im Allgemeinen sollten Sie das nicht tun, weil Sie gerade die generic
Version kompiliert haben, welche Sie mit Ihrer bereits installierten .NET Core Laufzeit ausführen können. Aber nur für den Fall, dass Sie es möchten:
dotnet publish ArchiSteamFarm -c "Release" -f "net5.0" -o "out/linux-x64" -r "linux-x64"
Natürlich sollten Sie linux-x64
durch eine Betriebssystemarchitektur ersetzen die Sie anpeilen möchten, wie beispielsweise win-x64
. Auch in diesem Build werden Aktualisierungen deaktiviert sein.
Im sehr seltenen Fall, dass Sie das generic-netf
-Paket erstellen möchten, können Sie das Zielframework von net5.0
auf net48
ändern. Dadurch benötigen Sie neben der .NET Core SDK auch ein entsprechendes .NET Framework Entwicklerpaket für die Kompilierung der netf
Variante, sodass das untenstehende nur unter Windows funktioniert:
dotnet publish ArchiSteamFarm -c "Release" -f "net48" -o "out/generic-netf"
Falls Sie das .NET Framework oder sogar die .NET Core SDK nicht selbst installieren können (z.B. weil es auf linux-x86
mit mono
kompiliert wurde), können Sie msbuild
direkt aufrufen. Sie müssen auch ASFNetFramework
manuell angeben, da ASF standardmäßig netf
build auf Nicht-Windows-Plattformen deaktiviert:
msbuild /m /r /t:Publish /p:Configuration=Release /p:TargetFramework=net48 /p:PublishDir=out/generic-netf /p:ASFNetFramework=true ArchiSteamFarm
Wenn Sie ASF-Quelltext bearbeiten möchten, können Sie zu diesem Zweck jede .NET Core kompatible IDE verwenden, obwohl selbst das optional ist. Sie können auch mit einem Notepad arbeiten und mit dem oben beschriebenen dotnet
Befehl kompilieren. Dennoch empfehlen wir für Windows ein aktuelles Visual Studio (kostenlose Community-Version reicht vollkommen).
Wenn Sie stattdessen den ASF-Quelltext unter Linux/OS X bearbeiten möchten, empfehlen wir eine aktuelle Visual Studio Code Version. Diese Version ist nicht so umfangreich wie das klassische Visual Studio, aber reicht vollkommen aus.
Natürlich sind alle obigen Vorschläge nur Empfehlungen, Sie können verwenden was immer Sie möchten. Am Ende wird sowieso immer dotnet build
ausgeführt. We use JetBrains Rider for ASF development, although it's not a free solution.
Der main
Zweig ist nicht unbedingt in einem Zustand, der eine erfolgreiche Kompilierung oder eine fehlerfreie ASF-Ausführung überhaupt erst ermöglicht, da es sich um einen Entwicklungszweig handelt, wie in unserem Veröffentlichungszyklus beschrieben. Für die Kompilierung oder Referenz von ASF aus dem Quelltext, die wird ein angemessenes Tag benötigt, welches zumindest eine erfolgreiche kompilation, und problemlose Ausführung (falls das Build als stable release markiert wurde), zu garantieren. Um die "Gesundheit" Ihres aktuellen Builds im UpdateChannel
zu überprüfen, können Sie unsere fortschreitenden Integrationen verwenden: GitHub, AppVeyor.
Offizielle ASF-Versionen werden von GitHub unter Windows mit der neuesten .NET Core SDK kompiliert, welche mit den ASF Runtime-Anforderungen übereinstimmt. Nach dem Bestehen von Tests werden alle Pakete auf GitHub als Release bereitgestellt. Dies garantiert auch Transparenz, da GitHub immer offizielle öffentliche Quellen für alle Builds verwendet und Sie können die Prüfsummen der GitHub Artefakte mit GitHub Release-Assets abgleichen. Die ASF-Entwickler kompilieren oder veröffentlichen selbst keine Builds, außer für den privaten Entwicklungsprozess und Debugging.
- 🏡 Startseite
- 🔧 Konfiguration
- 💬 Häufig gestellte Fragen (FAQ)
- ⚙️ Installation (hier beginnen)
- 👥 Hintergrund-Schlüssel-Einlöser
- 📢 Befehle
- 🛠️ Kompatibilität
- 🧩 ItemsMatcherPlugin
- 📋 Verwaltung
- ⏱️ Leistungseffizienz
- 📡 Telekommunikation
- 👪 Steam Familienbibliothek
- 🔄 Handel
- ⌨️ Befehlszeilenargumente
- 🚧 Veraltete Funktionen
- 🐳 Docker
- 🤔 Erweitertes FAQ
- 🚀 Hochperformantes Einrichtung
- 🔗 IPC
- 🌐 Übersetzung
- 📝 Protokollierung
- 💾 Speichereffiziente Einrichtung
- 🕵🏼♂️ MonitoringPlugin
- 🔌 Erweiterungen (Plugins)
- 🔐 Sicherheit
- 🧩 SteamTokenDumperPlugin
- 📦 Drittanbieter
- 📵 Zwei-Faktor-Authentifizierung (2FA)