Wine with WDF (branch dsdmo2)

Elizabeth Figura 2e632e8a4b extra debugging 9 月之前
dlls 1b8733e12c kernel32/tests: Zigzag test. 2 月之前
documentation 35d2f8767c documentation: Update URLs to point to the Gitlab Wiki. 4 月之前
fonts c047bb6ea3 makefiles: Always use the global SOURCES variable for .sfd files. 1 年之前
include 45f60302a2 make_req 2 月之前
libs ee10c5d233 vkd3d: Import upstream release 1.14. 2 月之前
loader fbefbe7c23 loader: Add Default, Failed, and LastKnownGood values to HKLM\System\Select. 2 月之前
nls 0aacea0905 nls: Set alpha bit on some Thai and Mongolian codes. 3 月之前
po 0eda6a76c7 po: Update Lithuanian translation. 3 月之前
programs 9090694fe6 winedbg: Add support for dynamic debug channel. 2 月之前
server 2e632e8a4b extra debugging 2 月之前
tools fae2474c33 wrc: Use the correct error function for syntax errors. 2 月之前
.editorconfig 692d7c6f5c .editorconfig: Remove the trim_trailing_whitespace setting. 5 年之前
.gitattributes aa24458086 Add .gitattributes file to mark generated files. 3 月之前
.gitlab-ci.yml 1d0f66a3c6 gitlab: Run tests on Debian after the daily commit round. 2 年之前
.mailmap 06cb24bb65 maintainers: Change the full form of my name. 9 月之前
ANNOUNCE.md 4161e62e47 Release 10.0-rc1. 2 月之前
AUTHORS 4161e62e47 Release 10.0-rc1. 2 月之前
COPYING.LIB 360a3f9142 Update the address of the Free Software Foundation. 19 年之前
LICENSE 06bfde3bff Update copyright info for 2024. 1 年之前
LICENSE.OLD 105b47011f Keep old license around. 23 年之前
MAINTAINERS e08ffccb8e winebth.sys: Add base winebth.sys driver. 2 月之前
README.md 35d2f8767c documentation: Update URLs to point to the Gitlab Wiki. 4 月之前
VERSION 4161e62e47 Release 10.0-rc1. 2 月之前
aclocal.m4 8a87ce3c4f configure: Use -fms-hotpatch when available. 3 月之前
configure 2bf4b520ed autoreconf 2 月之前
configure.ac 03d4aac4d9 server: Create in-process synchronization objects for events. 2 月之前

README.md

INTRODUCTION

Wine is a program which allows running Microsoft Windows programs (including DOS, Windows 3.x, Win32, and Win64 executables) on Unix. It consists of a program loader which loads and executes a Microsoft Windows binary, and a library (called Winelib) that implements Windows API calls using their Unix, X11 or Mac equivalents. The library may also be used for porting Windows code into native Unix executables.

Wine is free software, released under the GNU LGPL; see the file LICENSE for the details.

QUICK START

From the top-level directory of the Wine source (which contains this file), run:

./configure
make

Then either install Wine:

make install

Or run Wine directly from the build directory:

./wine notepad

Run programs as wine program. For more information and problem resolution, read the rest of this file, the Wine man page, and especially the wealth of information found at https://www.winehq.org.

REQUIREMENTS

To compile and run Wine, you must have one of the following:

  • Linux version 2.6.22 or later
  • FreeBSD 12.4 or later
  • Solaris x86 9 or later
  • NetBSD-current
  • Mac OS X 10.12 or later

As Wine requires kernel-level thread support to run, only the operating systems mentioned above are supported. Other operating systems which support kernel threads may be supported in the future.

FreeBSD info: See https://wiki.freebsd.org/Wine for more information.

Solaris info: You will most likely need to build Wine with the GNU toolchain (gcc, gas, etc.). Warning : installing gas does not ensure that it will be used by gcc. Recompiling gcc after installing gas or symlinking cc, as and ld to the gnu tools is said to be necessary.

NetBSD info: Make sure you have the USER_LDT, SYSVSHM, SYSVSEM, and SYSVMSG options turned on in your kernel.

Mac OS X info: You need Xcode/Xcode Command Line Tools or Apple cctools. The minimum requirements for compiling Wine are clang 3.8 with the MacOSX10.10.sdk and mingw-w64 v8. The MacOSX10.14.sdk and later can only build wine64.

Supported file systems: Wine should run on most file systems. A few compatibility problems have also been reported using files accessed through Samba. Also, NTFS does not provide all the file system features needed by some applications. Using a native Unix file system is recommended.

Basic requirements: You need to have the X11 development include files installed (called xorg-dev in Debian and libX11-devel in Red Hat). Of course you also need make (most likely GNU make). You also need flex version 2.5.33 or later and bison.

Optional support libraries: Configure will display notices when optional libraries are not found on your system. See https://gitlab.winehq.org/wine/wine/-/wikis/Building-Wine for hints about the packages you should install. On 64-bit platforms, you have to make sure to install the 32-bit versions of these libraries.

COMPILATION

To build Wine, do:

./configure
make

This will build the program "wine" and numerous support libraries/binaries. The program "wine" will load and run Windows executables. The library "libwine" ("Winelib") can be used to compile and link Windows source code under Unix.

To see compile configuration options, do ./configure --help.

For more information, see https://gitlab.winehq.org/wine/wine/-/wikis/Building-Wine

SETUP

Once Wine has been built correctly, you can do make install; this will install the wine executable and libraries, the Wine man page, and other needed files.

Don't forget to uninstall any conflicting previous Wine installation first. Try either dpkg -r wine or rpm -e wine or make uninstall before installing.

Once installed, you can run the winecfg configuration tool. See the Support area at https://www.winehq.org/ for configuration hints.

RUNNING PROGRAMS

When invoking Wine, you may specify the entire path to the executable, or a filename only.

For example, to run Notepad:

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 is not perfect, so some programs may crash. If that happens you will get a crash log that you should attach to your report when filing a bug.

GETTING MORE INFORMATION