Wine 8.14 發布,修復了 30 個錯誤並進行了近 500 個更改

Linux 上的葡萄酒

Wine 是基於 Unix 操作系統的 Win16 和 Win32 應用程序編程接口的重新實現。

前幾天公佈了 發布新開發版本“Wine 8.14”,自 8.13 版發布以來,已關閉 30 個錯誤報告,並進行了 475 項更改。

對於那些不了解 Wine 的人,他們應該知道 這是一個流行的免費和開源軟件  允許用戶在 Linux 上運行 Windows 應用程序 和其他類 Unix 操作系統。 從技術角度來說,Wine 是一個兼容層,它將系統調用從 Windows 轉換為 Linux,並以 .dll 文件的形式使用一些 Windows 庫。

Wine 8.14的主要新聞

在 Wine 8.14 開發版本推出的這個新版本中,其主要新穎之處之一是 在 macOS 上,現在使用 PCSC 框架 支持智能卡。

另一個引人注目的變化是 魔獸世界64, 用於在 32 位 Windows 上運行 64 位程序的層, 修復了窗口消息機制的問題。

除此之外,圖書館 gdiplus 添加了轉換 1、4 和 8 位索引像素格式的功能 每個通道,而創建 Windows NT 註冊表 (REGF) 文件轉儲的功能是在 WineDump 實用程序中實現的。

在部分 錯誤報告已關閉 此新版本 Wine 8.14 中的應用程序和遊戲存在以下問題 《塵埃 2》、《Candytron》、《工人物語 II:十週年》、《文明 10》、《帶交火 mod 的自由職業者》、《蜘蛛俠:破碎維度》、《Warframe》、Steam 客戶端、Yuzu 等等

至於 修復了錯誤 在這個新版本中:

  • Winddbg 有時會得到錯誤的參數
  • Cygwin/MSYS2 `script -e` 退出狀態轉發對於非零子進程隨機返回零
  • ws2_32:sock – test_connect() 間歇性失敗,並出現錯誤“測試失敗:預期超時”。
  • 執行 GdipFlattenPath 時堆棧溢出
  • advapi32:registry – test_performance_keys() 有時不起作用,因為時間倒退!
  • ws2_32:sock – test_close_events() 有時在 Wine 中不起作用
  • ws2_32:sock – test_empty_recv() 有時會在 Wine 中拋出 ERROR_IO_PENDING 錯誤
  • ws2_32:sock – DuplicateHandle(socket) 有時看起來像一個套接字
  • Windows 上的 test_WSAGetOverlappedResult()
  • ws2_32:sock – test_write_watch() 在 Windows 11 上獲得意外的寫入次數
  • Winetricks:驗證 dotnet20 (AutoHotKey) 在 wow64 版本上不起作用
  • 在最近的 macOS 上從 Winegstreamer 調用 GStreamer gst_init_check() 時會失敗,Wine 在 macOS Sonoma 上也會失敗
  • ieframe:webbrowser – test_SetQueryNetSessionCount() 有時會在 Windows 上獲得意外的會話數
  • httpapi:httpapi – test_v2_bound_port() 有時在 Windows 10 上正確連接
  • amstream:amstream 在 gitlab-debian-32 上失敗並系統退出
  • gdi32:dc – print_something() 在 fg-deb64-* 上得到錯誤的簽名
  • ntdll:file – 64 位 test_file_disposition_information() 函數在 Windows 10 1607 和 1709 上出現不受支持的錯誤

終於 如果您想了解更多 關於Wine新發布的開發版本,可以查閱日誌 在以下鏈接中進行更改。 

如何在Ubuntu及其衍生產品上安裝Wine 8.14的開發版本?

如果您有興趣在自己的發行版上測試Wine的新開發版本,則可以按照以下我們共享的說明進行操作。

第一步也是最重要的一步是啟用32位架構,儘管我們的系統是 64 位的,但執行此步驟可以為我們節省許多通常會出現的問題,因為大多數 Wine 庫都專注於 32 位架構。

為此,我們寫了關於終端的內容:

sudo dpkg --add-architecture i386

現在 我們必須導入密鑰並將其添加到系統中 使用此命令:

wget -nc https://dl.winehq.org/wine-builds/Release.key
sudo apt-key add Release.key

現在做這個 我們將向系統添加以下存儲庫,為此,我們在終端中編寫:

sudo apt-add-repository "deb https://dl.winehq.org/wine-builds/ubuntu/ $(lsb_release -sc) main"
sudo apt-get update sudo apt-get --download-only install winehq-devel
sudo apt-get install --install-recommends winehq-devel
sudo apt-get --download-only dist-upgrade

最後,我們可以通過執行以下命令來驗證我們已經安裝了 Wine 以及我們在系統中擁有的版本:

wine --version

如何從Ubuntu或某些衍生產品中卸載Wine?

最後對於那些出於任何原因想要從他們的系統中卸載這個開發版本的 Wine 的人來說, 他們只應執行以下命令。

卸載開發版本:

sudo apt purge winehq-devel
sudo apt-get remove wine-devel
sudo apt-get autoremove