ValveSoftware/wine
GitHub: ValveSoftware/wine
Valve 维护的 Wine 兼容层分支,使 Windows 应用程序和游戏能够在 Linux、macOS 等 Unix 系统上直接运行,是 Proton 游戏兼容技术的基石。
Stars: 1883 | Forks: 362
## 简介
Wine 是一个允许在 Unix 上运行 Microsoft Windows 程序
(包括 DOS、Windows 3.x、Win32 和 Win64 可执行文件)的程序。
它包含一个用于加载并执行 Microsoft Windows 二进制文件的程序加载器,
以及一个库(称为 Winelib),该库使用 Unix、X11 或 Mac 上的等效功能来实现 Windows API 调用。
该库也可用于将 Windows 代码移植为原生的 Unix 可执行文件。
Wine 是自由软件,基于 GNU LGPL 发布;详情请参阅 LICENSE 文件。
## 快速开始
在 Wine 源代码的顶级目录(包含此文件的目录)中,运行:
```
./configure
make
```
然后选择安装 Wine:
```
make install
```
或者直接从构建目录运行 Wine:
```
./wine notepad
```
使用 `wine program` 来运行程序。获取更多信息和解决问题的方法,
请阅读本文件的余下部分、Wine 的 man 手册页,
以及特别是 https://www.winehq.org 上提供的大量信息。
## 系统要求
要编译并运行 Wine,您必须具备以下操作系统之一:
- Linux 2.6.22 或更高版本
- FreeBSD 12.4 或更高版本
- Solaris x86 9 或更高版本
- NetBSD-current
- Mac OS X 10.12 或更高版本
由于 Wine 运行需要内核级的线程支持,因此目前仅支持上述操作系统。
未来可能会支持其他支持内核线程的操作系统。
**FreeBSD 信息**:
详情请参阅 https://wiki.freebsd.org/Wine。
**Solaris 信息**:
您极有可能需要使用 GNU 工具链(gcc、gas 等)来构建 Wine。
警告:安装 gas *并不* 能保证它会被 gcc 使用。据说在安装 gas 后重新编译 gcc,
或者将 cc、as 和 ld 软链接到 GNU 工具是必要的。
**NetBSD 信息**:
请确保您的内核开启了 USER_LDT、SYSVSHM、SYSVSEM 和 SYSVMSG 选项。
**Mac OS X 信息**:
您需要 Xcode/Xcode Command Line Tools 或 Apple cctools。
编译 Wine 的最低要求是:带有 MacOSX10.10.sdk 的 clang 3.8 以及 mingw-w64 v8。
MacOSX10.14.sdk 及更高版本只能构建 wine64。
**支持的文件系统**:
Wine 应该可以在大多数文件系统上运行。在使用通过 Samba 访问的文件时,
也报告了一些兼容性问题。此外,NTFS 无法提供某些应用程序所需的全部文件系统特性。
建议使用原生的 Unix 文件系统。
**基本要求**:
您需要安装 X11 开发头文件
(在 Debian 中称为 xorg-dev,在 Red Hat 中称为 libX11-devel)。
当然,您还需要 make(极可能是 GNU make)。
您还需要 flex 2.5.33 或更高版本以及 bison。
**可选支持库**:
当在您的系统中未找到可选库时,Configure 脚本会显示提示信息。
请参阅 https://gitlab.winehq.org/wine/wine/-/wikis/Building-Wine
获取有关应安装哪些软件包的提示。在 64 位平台上,
您必须确保安装这些库的 32 位版本。
## 编译
要构建 Wine,请执行:
```
./configure
make
```
这将构建程序 "wine" 以及众多支持库/二进制文件。
程序 "wine" 将加载并运行 Windows 可执行文件。
库 "libwine"("Winelib")可用于在 Unix 环境下编译和链接 Windows 源代码。
要查看编译配置选项,请执行 `./configure --help`。
更多信息,请参阅 https://gitlab.winehq.org/wine/wine/-/wikis/Building-Wine
## 安装
一旦 Wine 构建成功,您可以执行 `make install`;这
将安装 wine 可执行文件和库、Wine 的 man 手册页以及其他
所需文件。
在安装之前,请不要忘记先卸载任何冲突的旧版 Wine。
请在安装前尝试执行 `dpkg -r wine`、`rpm -e wine` 或 `make uninstall`。
安装完成后,您可以运行 `winecfg` 配置工具。
请参阅 https://www.winehq.org/ 的支持区域获取配置提示。
## 运行程序
调用 Wine 时,您可以指定可执行文件的完整路径,
或者仅指定文件名。
例如,要运行记事本:
```
wine notepad (using the search Path as specified in
wine notepad.exe the registry to locate the file)
wine c:\\windows\\notepad.exe (using DOS filename syntax)
wine ~/.wine/drive_c/windows/notepad.exe (using Unix filename syntax)
wine notepad.exe readme.txt (calling program with parameters)
```
Wine 并不完美,因此某些程序可能会崩溃。如果发生这种情况,
您将获得一份崩溃日志,在提交 Bug 时应将其附加到您的报告中。
## 获取更多信息
- **WWW**:可以从 WineHQ 获取关于 Wine 的大量信息,网址是
https://www.winehq.org/:包含各种 Wine 指南、应用程序数据库和
错误跟踪。这可能是最好的起点。
- **FAQ**:Wine 常见问题解答(FAQ)位于 https://gitlab.winehq.org/wine/wine/-/wikis/FAQ
- **Wiki**:Wine Wiki 位于 https://gitlab.winehq.org/wine/wine/-/wikis/
- **Gitlab**:Wine 开发托管在 https://gitlab.winehq.org
- **邮件列表**:
为 Wine 用户和开发者提供了多个邮件列表;详情
请参阅 https://gitlab.winehq.org/wine/wine/-/wikis/Forums。
- **Bugs**:请向 Wine Bugzilla 报告错误,网址为 https://bugs.winehq.org
在提交 Bug 报告之前,请搜索 Bugzilla 数据库以检查您的问题是否已为人所知或已被修复。
- **IRC**:可以通过 irc.libera.chat 上的 `#WineHQ` 频道获取在线帮助。
标签:API转换, DOS程序支持, GNU LGPL, Gophish, Hpfeeds, Unix, Windows兼容层, Wine, Winelib, X11, 二进制翻译, 兼容性, 客户端加密, 数字足迹, 环境适配, 程序加载器, 系统工具, 系统模拟器, 系统调用, 跨平台运行环境, 运行环境