Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
在 macOS 上執行 Godot 應用程式
也參考
這個頁面描述的是在 macOS 上運作 Godot 專案。如果你還沒有匯出專案,請先閱讀 為 macOS 匯出。
預設情況下,macOS 僅允許執行已簽章與公證的應用程式。
備註
當從下載資料夾執行應用程式,或應用仍處於隔離狀態時,Gatekeeper 會進行「路徑隨機化」作為安全防護。這會造成應用程式存取相對路徑的失效。若要解決此問題,請將應用程式移動到 /Applications 資料夾。
一般來說,macOS 應用程式應避免依賴應用資料夾的相對路徑。
根據 macOS 應用簽章和分發方法的不同,可能出現下列情況:
App 已簽章並公證,通過 App Store 分發
備註
App 開發者需要加入 Apple 開發者計畫,然後在匯出時配置簽章和公證選項,最後將 App 上傳到 App Store。
應用程式應可直接執行,無需額外使用者操作。
App 已簽章並公證,在 App Store 外分發
備註
應用開發者需加入 Apple 開發者計畫,匯出時設定簽章與公證選項,然後將應用程式以「.DMG」或「.ZIP」檔案方式分發。
首次運作該 App 時,會出現如下對話方塊:
按一下 打開 啟動應用。
如果你看到了如下的警告對話方塊,那麼你的 Mac 是被設定成了只允許來自 App Store 的應用。
要允許協力廠商程式,請打開 系統設定,點擊 安全性與隱私,然後點擊 通用,解鎖設定,然後選擇 App Store 和被認可的開發者。
應用程式已簽章(包含 ad-hoc 簽章),但未公證
備註
應用開發者使用自簽憑證或 ad-hoc 簽章(Godot 匯出專案的預設行為)。
首次運作該 App 時,會出現如下對話方塊:
若要執行此應用程式,可暫時覆寫 Gatekeeper 設定:
可前往「系統偏好設定」>「安全性與隱私」>「一般」,然後點選「仍要打開」。
或於 Finder 視窗中對應用程式圖示滑鼠右鍵(或按住 Control 點擊),從選單選擇「打開」。
於確認對話框點選「打開」。
如出現提示請輸入密碼。
另一種方式為完全停用 Gatekeeper。請注意,這會降低電腦安全性,允許任何軟體執行。請於終端機執行 sudo spctl --master-disable,輸入密碼後,任何來源 選項即會出現:
請注意,macOS 更新後 Gatekeeper 會自動重新啟用。
應用程式未簽章,僅執行檔由連結器簽章
備註
應用程式使用官方匯出樣板建置,但未簽章。
首次運作該 App 時,會出現如下對話方塊:
若要執行此應用程式,請手動移除 quarantine 擴充檔案屬性:
打開
Terminal.app``(按下 :kbd:`Cmd + Space` 並輸入 ``Terminal)。切換至存放目標應用程式的資料夾。
使用
cd 路徑到_app_資料夾指令,例如若於「下載」資料夾,則輸入cd ~/Downloads/。執行指令
xattr -dr com.apple.quarantine "Unsigned Game.app"(包含引號及 .app 副檔名)。
應用程式與執行檔皆未簽章(僅適用於 Apple Silicon Mac)
備註
應用程式使用自訂匯出樣板並以 OSXCross 編譯,完全未經簽章。
首次運作該 App 時,會出現如下對話方塊:
若要執行此應用程式,你可自行進行 ad-hoc 簽章:
從 App Store 安裝
Xcode,啟動並確認安裝命令列工具。打開
Terminal.app``(按下 :kbd:`Cmd + Space` 並輸入 ``Terminal)。切換至存放目標應用程式的資料夾。
使用
cd 路徑到_app_資料夾指令,例如若於「下載」資料夾,則輸入cd ~/Downloads/。執行下列指令:
xattr -dr com.apple.quarantine "Unsigned Game.app"(包含引號及 .app 副檔名)。codesign -s - --force --deep "Unsigned Game.app"(包含引號及 .app 副檔名)。