為了簡化向Apple Silicon Mac 的過渡,Apple 允許開發人員創建一個通用二進製文件,這是一個可以在較舊的Intel 和現代Apple Silicon Mac 上運行的應用程序文件。我們將解釋它們是什麼以及它們是如何工作的。
這是一款在Intel 和Apple Silicon Mac 上運行的應用程序
2020 年,Apple 推出了一種在Apple Silicon(帶有M1 和M2 芯片)上運行的新型Mac,它代表了與之前的英特爾Mac 不同類型的計算機架構。這意味著Apple Silicon Mac 在沒有幫助的情況下無法運行為Intel Mac 編寫的程序。
有關的Mac 上的Rosetta 2 是什麼?
Apple 創建了兩種解決方案來橋接舊款基於Intel 的Mac 和新的基於Apple Silicon 的Mac 之間的兼容性,這始於M1 芯片。第一個是Rosetta 2,它是一個翻譯層,允許英特爾應用程序在Apple Silicon Mac 上以幾乎本機的速度運行。第二個是通用二進制。通用二進製文件是經過編譯可與Intel 和ARM 處理器一起使用的應用程序。這意味著您可以在Apple Silicon Mac 和Intel Mac 上運行相同的應用程序文件。
筆記: 通用二進製文件對Apple Silicon Mac 來說並不陌生:Apple 也 使用相同的品牌 在2006 年PowerPC 和Intel Mac 之間的過渡期間。以及計算機行業將兩種架構的二進製文件打包到一個文件中的傳統(稱為“胖二進制“)可以追溯到更遠的地方。
通用二進製文件在配備Apple M 系列芯片的Apple Silicon Mac 上本地運行,這意味著它們比必須通過Rosetta 2 運行的僅Intel 應用程序運行得更快、更高效。如果我們使用Apple 之前在PowerPC 和Intel 之間的架構轉換作為例如,在過渡的最初幾年,很可能許多應用程序將是通用的。但隨著時間的推移,Apple Silicon 的採用率越來越高,最終開發人員可能會轉向只生產Apple Silicon 原生應用程序。
Deja Vu:每個Mac CPU 架構的簡史
開發人員的優勢
對於軟件開發人員來說,通用二進製文件提供了一個很大的優勢:他們可以發布一個可以在兩種類型的Mac 上使用的.APP 文件。這意味著無需分發同一軟件程序的兩個不同版本。

開發人員通常 創建通用二進製文件 通過編譯軟件程序的源代碼兩次,每種類型的處理器一次。然後他們將生成的可執行文件組合成一個通用二進製文件(或“通用 2“) 文件。
雖然通用二進製文件提供了很大的優勢,但一個小缺點是通用二進製文件的大小通常比標準可執行文件大。儘管如此,在架構過渡期間,通用二進製文件允許用戶在任何類型的Mac 上運行軟件程序,而不必擔心兼容性問題。
通用二進制提示
既然您知道通用二進制是什麼,您可能想知道:我現在使用任何二進制嗎?您可以通過右鍵單擊Finder 中的應用程序圖標並在出現的菜單中選擇“獲取信息”來檢查應用程序是否為通用二進製文件。如果應用程序是通用二進制,您將在“種類”字段中看到“應用程序(通用)”。
此外,在“獲取信息”窗口中,您可以選擇是否要在Rosetta 中運行英特爾版本的應用程序,而不是原生的Apple Silicon 版本。為此,請選中標有“在Rosetta 中打開”的框。
下次打開應用程序時,英特爾版本的應用程序將運行。如果您想稍後返回運行Apple Silicon 本機應用程序,請右鍵單擊應用程序圖標,選擇“獲取信息”,然後取消選中“使用Rosetta 打開”。玩得開心!
如何在M1 Mac 上運行Intel 版本的通用Mac 應用程序