Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

Ausführen von Godot-Anwendungen unter macOS

Siehe auch

Diese Seite behandelt die Ausführung von Godot-Projekten unter macOS. Wenn Sie Ihr Projekt noch nicht exportiert haben, lesen Sie zuerst Exportieren für macOS.

Standardmäßig führt macOS nur Programme aus, die signiert und notarisiert sind.

Bemerkung

Wenn eine Anwendung aus dem Downloads-Ordner ausgeführt wird oder sich noch in Quarantäne befindet, führt Gatekeeper als Sicherheitsmaßnahme eine Pfad-Randomisierung durch. Dies unterbricht den Zugriff auf relative Pfade von der Anwendung, auf die von der Anwendung benötigt werden, um zu funktionieren. Um dieses Problem zu beheben, verschieben Sie die Anwendung in den Ordner /Applications.

Im Allgemeinen sollten macOS-Anwendungen es vermeiden, sich auf relative Pfade aus dem Anwendungsordner zu verlassen.

Abhängig von der Art und Weise, wie eine macOS-App signiert und verteilt wird, sind die folgenden Szenarien möglich:

App wird signiert, notarisiert und über den App Store vertrieben

Bemerkung

App-Entwickler müssen dem Apple Developer Program beitreten und die Optionen zum Signieren und Notarisieren während des Exports konfigurieren und die App dann in den App Store hochladen.

Die Anwendung sollte sofort einsatzbereit sein, ohne dass eine zusätzliche Benutzerinteraktion erforderlich ist.

App wird signiert, notarisiert und außerhalb des App Stores vertrieben

Bemerkung

App-Entwickler müssen dem Apple Developer Program beitreten und die Optionen zum Signieren und Notarisieren während des Exports konfigurieren und die App dann als ".DMG" oder ".ZIP" Archiv verteilen.

Wenn Sie die Anwendung zum ersten Mal starten, wird der folgende Dialog angezeigt:

../../_images/signed_and_notarized_0.png

Klicken Sie auf Open, um die Anwendung zu starten.

Wenn Sie die folgende Warnung sehen, ist Ihr Mac so eingestellt, dass er nur Anwendungen aus dem App Store zulässt.

../../_images/signed_and_notarized_1.png

Um Anwendungen von Drittanbietern zuzulassen, öffnen Sie Systemeinstellungen, klicken Sie auf Sicherheit und Datenschutz, dann auf Allgemein, entsperren Sie die Einstellungen und wählen Sie App Store und identifizierte Entwickler.

../../_images/sys_pref_0.png

App ist signiert (einschließlich Ad-hoc-Signaturen), aber nicht notarisiert

Bemerkung

Der App-Entwickler hat ein selbstsigniertes Zertifikat oder eine Ad-hoc-Signierung verwendet (Default-Verhalten von Godot für exportierte Projekte).

Wenn Sie die Anwendung zum ersten Mal starten, wird der folgende Dialog angezeigt:

../../_images/signed_0.png

Um diese Anwendung auszuführen, können Sie Gatekeeper vorübergehend außer Kraft setzen:

  • Öffnen Sie entweder Systemeinstellungen, klicken Sie auf Sicherheit und Datenschutz, dann auf Allgemein und klicken Sie auf Trotzdem öffnen.

    ../../_images/sys_pref_1.png
  • Oder klicken Sie mit der rechten Maustaste (Control-Klick) auf das Anwendungs-Icon im Finder-Fenster und wählen Sie Öffnen aus dem Menü.

    ../../_images/signed_1.png
  • Klicken Sie dann im Bestätigungsdialog auf Öffnen.

    ../../_images/signed_2.png
  • Geben Sie Ihr Passwort ein, wenn Sie dazu aufgefordert werden.

Eine andere Möglichkeit besteht darin, Gatekeeper vollständig zu deaktivieren. Beachten Sie, dass dies die Sicherheit Ihres Computers beeinträchtigt, da Sie dann jede beliebige Software ausführen können. Um dies zu tun, führen Sie sudo spctl --master-disable im Terminal aus, Geben Sie Ihr Passwort ein, und die Option Anywhere wird verfügbar sein:

../../_images/macos_allow_from_anywhere.png

Beachten Sie, dass Gatekeeper sich selbst wieder aktiviert, wenn macOS aktualisiert wird.

App ist nicht signiert, ausführbare Datei ist Linker-signiert

Bemerkung

Die App wird unter Verwendung offizieller Exportvorlagen erstellt, ist aber nicht signiert.

Wenn Sie die Anwendung zum ersten Mal starten, wird der folgende Dialog angezeigt:

../../_images/linker_signed_1.png

Um diese App auszuführen, sollten Sie das Attribut für die erweiterte Quarantäne-Datei manuell entfernen:

  • Öffnen Sie Terminal.app (drücken Sie Cmd + Space und geben Sie Terminal ein).

  • Navigieren Sie zum Godot-Stammverzeichnis und wählen Sie es aus.

    Benutzen Sie den Befehl cd path_to_the_app_folder, z.B. cd ~/Downloads/, wenn es sich im Downloads-Ordner befindet.

  • Führen Sie den Befehl xattr -dr com.apple.quarantine "Unsigned Game.app" aus (einschließlich Anführungszeichen und der Erweiterung .app).

Weder App noch ausführbare Datei sind signiert (nur für Apple Silicon Macs relevant)

Bemerkung

Die App wird mit benutzerdefinierten Exportvorlagen erstellt, mit OSXCross kompiliert und ist nicht signiert.

Wenn Sie die Anwendung zum ersten Mal starten, wird der folgende Dialog angezeigt:

../../_images/unsigned_1.png

Um diese Anwendung auszuführen, können Sie sie selbst ad-hoc signieren:

  • Installieren Sie Xcode für den App Store, starten Sie es und bestätigen Sie die Installation der Kommandozeilentools.

  • Öffnen Sie Terminal.app (drücken Sie Cmd + Space und geben Sie Terminal ein).

  • Navigieren Sie zum Godot-Stammverzeichnis und wählen Sie es aus.

    Benutzen Sie den Befehl cd path_to_the_app_folder, z.B. cd ~/Downloads/, wenn es sich im Downloads-Ordner befindet.

  • Führen Sie folgende Befehle aus:

    xattr -dr com.apple.quarantine "Unsigned Game.app" (einschließlich Anführungszeichen und ".app" Dateiendung).

    codesign -s - --force --deep "Unsigned Game.app" (einschließlich Anführungszeichen und ".app" Dateiendung).