-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Compatibility zh TW
ASF是一個在.NET Core平台上執行的C#應用程式。 這代表ASF並不是被編譯成可供CPU直接執行的機器語言,而是被編譯成通用中間語言(CIL),一種需要對應的執行環境才能執行的語言。
這種方法具有巨大的優勢,因為CIL獨立於平台,這就是為什麼ASF天生就能夠在許多作業系統上執行的原因,特別是Windows、Linux與macOS上。 不僅不需要模擬,同時也支援所有平台相關及硬體相關的最佳化,例如CPU SSE指令。 因此,ASF在表現卓越的效能及最佳化時,同時仍能提供完美的相容性與可靠性。
這也代表執行ASF沒有特定的作業系統需求,因為它需要的只是執行於作業系統上的執行環境,而非作業系統本身。 只要在執行期間正確執行ASF程式碼,底層的作業系統不論是Windows、Linux、macOS、BSD、Sony Playstation 4、Nintendo Wii,或是您的烤麵包機上,都無所謂。只要有相應的.NET,就能執行ASF(使用generic
變體版本)。
然而,不論您想要在哪個平台上執行ASF,您都需要確保該平台安裝了.NET需求套件。 這些都是確保執行環境功能正常所需的底層函式庫,也是ASF第一時間運作的絕對核心。 很有可能您已安裝了其中的一些(甚至全部)。
ASF有兩種封裝方式:通用(Generic)套件與特定作業系統(OS-specific)套件。 從功能上來說,這兩種套件是完全相同的,都能夠自動進行更新。 唯一的區別就是Generic套件中,不包含能使ASF直接執行適用於特定作業系統的執行環境。
Generic套件與平台無關,所以它不包含任何給特定設備使用的程式碼。 這個版本需要您在作業系統中已安裝的適合版本的.NET執行環境。 我們都知道讓相依套件一直保持在最新是多麼麻煩的一件事,因此這個套件主要是為那些已在使用.NET,知道如何使用已安裝的程式,且不想為了ASF單獨複製執行環境的人所提供的。 Generic套件還可以使您在任何可以獲得.NET執行環境的地方執行ASF,不論是否存在適用於您的作業系統的ASF組建版本。
對於普通或甚至是進階的使用者,如果只想執行ASF而不想鑽研.NET的技術細節,我們不建議使用Generic版本。 也就是說,只有您了解Generic套件才能使用它,否則最好使用下面介紹的適用於特定作業系統的套件。
除了Generic套件中包含的受控代碼外,適用於特定作業系統的套件還包含指定平台的本機碼。 也就是說,適用於特定作業系統的套件已經在裡面包含了正確的.NET執行環境,它可以使您完全跳過整個麻煩的安裝過程,直接啟動ASF。 適用於特定作業系統的套件,顧名思義,是針對不同作業系統的,每種作業系統都需要它自己特定的版本:例如Windows需要PE32+ ArchiSteamFarm.exe
二進制檔案,而Linux則需要Unix ELF ArchiSteamFarm
二進制檔案。 如您所知,這兩種類型彼此不相容。
ASF目前擁有以下特定作業系統的變體版本:
-
linux-arm
支援包含glibc 2.23/musl 1.2.2及更新版本的32位元基於ARM(ARMv7+)的GNU/Linux作業系統。 這個變體版本涵蓋了例如Raspberry Pi 2(或更新版本的)平台,並不支援較舊的ARM架構,例如Raspberry Pi 0中的ARMv6 & 1,它也不適用於未實作所需GNU/Linux環境的作業系統(例如Android)。 -
linux-arm64
支援包含glibc 2.23/musl 1.2.2及更新版本的64位元基於ARM(ARMv8)的GNU/Linux作業系統。 這個變體版本涵蓋了例如Raspberry Pi 3(或更新版本的)平台,並不支援未具備所需64位元函式庫的32位元作業系統(例如32位元的Raspberry Pi OS),它也不適用於未實作所需GNU/Linux環境的作業系統(例如Android)。 -
linux-x64
支援包含glibc 2.23/musl 1.2.2及更新版本的64位元的GNU/Linux作業系統。 -
osx-arm64
支援64位元基於ARM(Apple silicon)的macOS 12.0及更新版本的作業系統。 -
osx-x64
支援64位元的macOS 12.0及更新版本的作業系統。 -
win-arm64
支援64位元基於ARM(ARMv8+)的Windows 10、11及更新版本的作業系統。 -
win-x64
支援64位元的Windows 10、11、Server 2012+及更新版本的作業系統。
當然,即使沒有適合您作業系統及架構的特定作業系統套件,您也可以手動安裝適當的.NET Core執行環境並執行Generic ASF套件,這也是這個套件存在的主要原因。 Generic ASF套件與平台無關,可以在任何具有可用.NET Core執行環境的平台上執行。 需要注意:ASF需要的是.NET Core執行環境,而非特定的作業系統或架構。 例如,如果您使用的是32位元Windows,但ASF沒有win-x86
版本,您仍然可以安裝win-x86
版本的.NET Core SDK,然後執行Generic版本的ASF。 我們無法為所有作業系統及架構組合都產生一份執行檔,所以我們為此畫下一道分隔線。 x86就是這條線的其中之一,因為這種架構從2004年開始就已經過時了。
您可以造訪發行說明來查看.NET Core 8.0支援的平台與作業系統的完整清單。
若您使用適用於特定作業系統的套件,那麼您不必擔心執行環境的需求,因為ASF總是會搭載所需的最新執行環境,只要您已安裝並更新.NET Core需求套件,就能夠正常執行。 也就是說,您不需要安裝.NET Core執行環境或SDK,因為特定作業系統的版本只需要本機安裝對應作業系統的相依套件(需求套件),而不需要其他項目。
但是,如果您嘗試執行Generic ASF套件,則必須確保您的.NET執行環境支援ASF所需的平台。
作為一個程式,ASF目前針對的是.NET 8.0(net8.0
),但它可能在未來針對更新的平台。 從8.0.100 SDK(8.0.0執行環境)就開始支援net8.0
,儘管ASF可能偏好最新的執行環境,所以您應該確保你有最新的SDK(或最新的執行環境)可用於您的設備。 若您的執行環境低於編譯期間指定的最低支援版本,Generic ASF變體版本可能會拒絕啟動。
如有疑問,您可以造訪我們用於編譯並在GitHub上部署新版本的持續整合程序。 作為.NET驗證步驟的一部分,您可以在每個組建版本中找到dotnet --info
輸出。