Wine (Wine Is Not an Emulator) 是一個在 X Window System 與 UNIX-like 系統上實現 Windows API 的兼容層,讓 Windows 可執行檔 (.exe/.dll) 在 Linux、FreeBSD、Solaris、macOS (透過 WineBottler/CrossOver) 直接運行,無需安裝 Windows 作業系統。
kernel32, user32, gdi32, advapi32...) 由 Wine 以 C 重寫;可選擇使用原生 Windows DLL (native) 替換內建實現 (builtin)。
# Ubuntu/Debian
sudo apt-get install wine64 wine32
# RHEL/CentOS/Fedora
sudo yum install wine
# Arch
sudo pacman -S wine
# 執行 Windows 程式
wine program.exe
wine msiexec /i setup.msi
winecfg:圖形配置介面 (Windows 版本、函式庫覆寫、磁碟機映射、音訊、圖形)。winetricks:腳本自動安裝常用運行庫 (VC++ Redist、.NET Framework、DirectX、字型、編碼器)。WINEPREFIX:隔離環境變數,預設 ~/.wine。不同程式建議用不同 Prefix 避免衝突。
WINEPREFIX=~/wine-office winecfg
WINEPREFIX=~/wine-game wine setup.exe
| 產品 | 廠商 | 特色 |
|---|---|---|
| CrossOver | CodeWeavers | 圖形化安裝器、瓶管理、商業支援、貢獻代碼回 Wine 上游 |
| Cedega (停止) | TransGaming | 專注遊戲、DirectX 轉譯層 |
| Porting Kit | Porting Team | macOS 上自動化安裝腳本 |
wine64 + 32 位庫 (wine32/lib32) 共存。Wine 是開源逆向工程的奇蹟,讓 Linux 用戶在不妥協自由的前提下,保留運行關鍵 Windows 程式的能力。配合 Proton、WinApps 等新技術,邊界正持續模糊。