mirror of
https://github.com/reactos/wine.git
synced 2024-11-25 04:39:45 +00:00
215 lines
8.2 KiB
Plaintext
215 lines
8.2 KiB
Plaintext
1. INTRODUCTION
|
|
|
|
Wine is a program which allows running Microsoft Windows programs
|
|
(including DOS, Windows 3.x and Win32 executables) on Unix. It
|
|
consists of a program loader which loads and executes a Microsoft
|
|
Windows binary, and a library that implements Windows API calls using
|
|
their Unix or X11 equivalents. The library may also be used for
|
|
porting Win32 code into native Unix executables.
|
|
|
|
Wine is free software, and its license (contained in the file LICENSE)
|
|
is BSD style. Basically, you can do anything with it except claim
|
|
that you wrote it.
|
|
|
|
2. QUICK START
|
|
|
|
Whenever you compile from source, it is recommended to use the Wine
|
|
Installer to build and install wine. From the top-level Wine
|
|
directory (which contains this file), run:
|
|
|
|
./tools/wineinstall
|
|
|
|
Run programs as "wine [options] program". For more information and
|
|
problem resolution, read the rest of this file, the Wine manpage,
|
|
and the files in the documentation directory in the Wine source.
|
|
|
|
3. REQUIREMENTS
|
|
|
|
To compile and run Wine, you must have one of the following:
|
|
|
|
Linux version 2.0.36 or above
|
|
FreeBSD-current or FreeBSD 3.0 or later
|
|
Solaris x86 2.5 or later
|
|
|
|
Linux info:
|
|
Although Linux version 2.0.x will mostly work, certain features
|
|
(specifically LDT sharing) required for properly supporting Win32
|
|
threads were not implemented until kernel version 2.2. If you get
|
|
consistent thread-related crashes, you may want to upgrade to 2.2.
|
|
Also, some bugs were fixed and additional features were added
|
|
late in the Linux 2.0.x series, so if you have a very old Linux kernel,
|
|
you may want to upgrade to at least the latest 2.0.x release.
|
|
|
|
FreeBSD info:
|
|
On FreeBSD, you may want to apply an LDT sharing patch too
|
|
(unless you are tracking -current where it finally has
|
|
been committed just recently), and there also is a small sigtrap
|
|
fix thats needed for wine's debugger. (Actually now that its using
|
|
ptrace() by default it may no longer make a difference but it still
|
|
doesn't hurt...) And if you're running a system from the -stable
|
|
branch older than Nov 15 1999, like a 3.3-RELEASE, then you also
|
|
need to apply a signal handling change that was MFC'd at that date.
|
|
Make sure you have the USER_LDT, SYSVSHM, SYSVSEM, and SYSVMSG options
|
|
turned on in your kernel.
|
|
More information including patches for the -stable branch is in
|
|
the ports tree:
|
|
ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/ports/emulators/wine/files/
|
|
|
|
Solaris info:
|
|
You will most likely need to build wine with the GNU toolchain
|
|
(gcc, gas, etc.)
|
|
|
|
Wine requires kernel-level threads to run. Currently, only Linux
|
|
version 2.0 or later, FreeBSD-current or FreeBSD 3.0 or later,
|
|
and Solaris x86 version 2.5 or later are supported.
|
|
Other operating systems which support kernel threads may be supported
|
|
in the future.
|
|
|
|
You need to have the X11 development include files installed
|
|
(called xlib6g-dev in Debian and XFree86-devel in RedHat).
|
|
To use wine's support for multi-threaded applications, your X libraries
|
|
must be reentrant, which is probably the default by now.
|
|
If you have libc6 (glibc2), or you compiled the X libraries yourself,
|
|
they were probably compiled with the reentrant option enabled.
|
|
|
|
You also need to have libXpm installed on your system. The sources for
|
|
it are available at ftp.x.org and all its mirror sites in the directory
|
|
/contrib/libraries. If you are using RedHat, libXpm is distributed as the
|
|
xpm and xpm-devel packages. Debian distributes libXpm as xpm4.7, xpm4g,
|
|
and xpm4g-dev. SuSE calls these packages xpm and xpm-devel.
|
|
|
|
On x86 Systems gcc >= 2.7.2 is required.
|
|
Versions earlier than 2.7.2.3 may have problems when certain files
|
|
are compiled with optimization, often due to problems with header file
|
|
management. pgcc currently doesn't work with wine. The cause of this problem
|
|
is unknown.
|
|
|
|
You also need flex version 2.5 or later and yacc.
|
|
Bison will work as a replacement for yacc. If you are
|
|
using RedHat or Debian, install the flex and bison packages.
|
|
|
|
In case you want to build the documentation yourself, you'll also
|
|
need the DocBook tools (db2html, db2ps, db2pdf).
|
|
|
|
4. COMPILATION
|
|
|
|
In case you chose to not use wineinstall, run the following commands
|
|
to build Wine:
|
|
|
|
./configure
|
|
make depend
|
|
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.
|
|
|
|
To upgrade to a new release by using a patch file, first cd to the
|
|
top-level directory of the release (the one containing this README
|
|
file). Then do a "make clean", and patch the release with:
|
|
|
|
gunzip -c patch-file | patch -p1
|
|
|
|
where "patch-file" is the name of the patch file (something like
|
|
Wine-yymmdd.diff.gz). You can then re-run "./configure", and then
|
|
run "make depend && make".
|
|
|
|
|
|
5. SETUP
|
|
|
|
Once Wine has been built correctly, you can do "make install"; this
|
|
will install the wine executable, the Wine man page, and a few other
|
|
needed files.
|
|
|
|
If you want to build the documentation, you can run "make" in the
|
|
documentation directory.
|
|
|
|
Wine requires a configuration file named wine.conf. Its default
|
|
location is /usr/local/etc, but you can supply a different name when
|
|
configuring wine by using the --prefix or --sysconfdir options to
|
|
./configure. You can also override the global configuration file with
|
|
a file named "config" in your ~/.wine directory.
|
|
|
|
The format of this file is explained in the man page. The file
|
|
documentation/samples/config contains an example configuration file
|
|
which has to be adapted and copied to one of the two locations
|
|
mentioned above.
|
|
|
|
See http://www.winehq.com/config.html for further configuration hints.
|
|
|
|
In order to verify the correctness of the environment you need for
|
|
Wine to run successfully, run "./tools/winecheck | less". You'll get
|
|
a percentage score indicating "Wine configuration correctness".
|
|
|
|
6. RUNNING PROGRAMS
|
|
|
|
When invoking Wine, you may specify the entire path to the executable,
|
|
or a filename only.
|
|
|
|
For example: to run Solitaire:
|
|
|
|
wine sol (using the searchpath to locate the file)
|
|
wine sol.exe
|
|
|
|
wine c:\\windows\\sol.exe (using a DOS filename)
|
|
|
|
wine /usr/windows/sol.exe (using a Unix filename)
|
|
|
|
Note: the path of the file will also be added to the path when
|
|
a full name is supplied on the commandline.
|
|
|
|
Wine is not yet complete, so some programs may crash. Provided you set up
|
|
winedbg correctly according to documentation/debugger.sgml, you will be dropped
|
|
into a debugger so that you can investigate and fix the problem. For more
|
|
information on how to do this, please read the file documentation/debugging.
|
|
If you post a bug report, please read the file documentation/bugreports to
|
|
see what information is required.
|
|
|
|
You should backup all your important files that you give Wine access
|
|
to, or use a special Wine copy of them, as there have been some cases
|
|
of users reporting file corruption. Do NOT run Explorer, for instance,
|
|
if you don't have a proper backup, as it renames/cripples several
|
|
directories sometimes.
|
|
|
|
|
|
7. GETTING MORE INFORMATION
|
|
|
|
DOCU: grep -i "SearchString" `find documentation/`|more
|
|
|
|
FAQ: The Wine FAQ is located at http://www.winehq.com/FAQ
|
|
|
|
WWW: A great deal of information about Wine is available from WineHQ at
|
|
http://www.winehq.com/, especially various user guides.
|
|
Untested patches against the current release
|
|
are available on the wine-patches mailing list; see
|
|
http://www.winehq.com/dev.shtml#ml for more information.
|
|
|
|
HOWTO: The Wine HOWTO is available at
|
|
http://www.westfalen.de/witch/wine-HOWTO.txt .
|
|
|
|
Usenet: Please browse old messages on http://www.dejanews.com/ to check whether
|
|
your problem is already fixed before posting a bug report to the
|
|
newsgroup.
|
|
|
|
The best place to get help or to report bugs is the Usenet newsgroup
|
|
comp.emulators.ms-windows.wine. Please read the file
|
|
documentation/bugreports to see what information should be included
|
|
in a bug report.
|
|
|
|
IRC: Online help is available at channel #WineHQ on IRCnet.
|
|
|
|
CVS: The current Wine development tree is available through CVS.
|
|
Go to http://www.winehq.com/dev.shtml for more information.
|
|
|
|
If you add something, or fix a bug, please send a patch ('diff -u'
|
|
format preferred) to julliard@winehq.com or to the
|
|
wine-patches@winehq.com mailing list for inclusion in the next
|
|
release.
|
|
|
|
--
|
|
Alexandre Julliard
|
|
julliard@winehq.com
|