blob: 029d09b706a2f2525f7e35ba728e04d6ed7c0d86 [file] [log] [blame]
Alexandre Julliard3a5816f1994-12-27 14:11:53 +000011. INTRODUCTION
Alexandre Julliard2c25c3e1993-06-29 16:33:12 +00002
Douglas Ridgway692389d1998-11-22 16:56:44 +00003Wine is a program which allows running Microsoft Windows programs
4(including DOS, Windows 3.x and Win32 executables) on Unix. It
James Juran0ff60a01999-04-26 14:57:06 +00005consists of a program loader which loads and executes a Microsoft
Andreas Mohr3d2a38c2001-06-29 01:41:03 +00006Windows binary, and a library (called Winelib) that implements Windows
7API calls using their Unix or X11 equivalents. The library may also
8be used for porting Win32 code into native Unix executables.
Alexandre Julliard8d24ae61994-04-05 21:42:43 +00009
Martin Garton89894ff2002-03-20 00:59:27 +000010Wine is free software, released under the GNU LGPL; see the file
11LICENSE for the details.
Alexandre Julliard1f579291994-05-25 16:25:21 +000012
Alexandre Julliard4e474032006-08-23 15:59:14 +020013
Alexandre Julliardd6baf1b1999-07-18 15:47:22 +0000142. QUICK START
Alexandre Julliard3a5816f1994-12-27 14:11:53 +000015
Andreas Mohr581fc922000-09-18 01:40:32 +000016Whenever you compile from source, it is recommended to use the Wine
Andreas Mohra0ff2b42002-02-27 01:30:32 +000017Installer to build and install Wine. From the top-level directory
18of the Wine source (which contains this file), run:
Alexandre Julliardd6baf1b1999-07-18 15:47:22 +000019
20./tools/wineinstall
21
Alexandre Julliard4e474032006-08-23 15:59:14 +020022Run programs as "wine program". For more information and problem
23resolution, read the rest of this file, the Wine man page, and
Dimi Paun12f9bb72005-05-10 13:26:14 +000024especially the wealth of information found at http://www.winehq.org.
Alexandre Julliardd6baf1b1999-07-18 15:47:22 +000025
Alexandre Julliard4e474032006-08-23 15:59:14 +020026
Alexandre Julliardd6baf1b1999-07-18 15:47:22 +0000273. REQUIREMENTS
Alexandre Julliard401710d1993-09-04 10:09:32 +000028
James Juran0ff60a01999-04-26 14:57:06 +000029To compile and run Wine, you must have one of the following:
Alexandre Julliardf41aeca1993-09-14 16:47:10 +000030
Andreas Mohrc08b9482003-04-04 22:12:21 +000031 Linux version 2.0.36 or above
Gerald Pfeifera93fb4a2004-11-21 15:33:00 +000032 FreeBSD 5.3 or later
Andreas Mohrc08b9482003-04-04 22:12:21 +000033 Solaris x86 2.5 or later
34 NetBSD-current
Alexandre Julliard4e474032006-08-23 15:59:14 +020035 MacOS X 10.4 or later
Andreas Mohrc08b9482003-04-04 22:12:21 +000036
37As Wine requires kernel-level thread support to run, only the operating
38systems mentioned above are supported.
39Other operating systems which support kernel threads may be supported
40in the future.
Alexandre Julliardf41aeca1993-09-14 16:47:10 +000041
Andreas Mohrc9ec8842001-01-24 19:37:13 +000042Linux info:
Andreas Mohrc08b9482003-04-04 22:12:21 +000043 While Linux 2.2.x should still work and Linux 2.0.x may still work
44 (older 2.0.x versions had thread-related crashes),
Marcus Meissner4fe7ee82006-09-12 22:43:53 +020045 it's best to have a current kernel such as 2.4.x or 2.6.x.
Alexandre Julliard6abb89c1995-03-02 17:33:47 +000046
Andreas Mohrc9ec8842001-01-24 19:37:13 +000047FreeBSD info:
Gerald Pfeifere5f66372004-12-15 10:51:51 +000048 Wine should build on FreeBSD 4.x and FreeBSD 5.x, but versions before
49 FreeBSD 5.3 will generally not work properly.
Gerald Pfeifera93fb4a2004-11-21 15:33:00 +000050
51 More information can be found in the FreeBSD ports tree at
52 <ftp://ftp.freebsd.org/pub/FreeBSD/ports/ports/emulators/wine/>.
Andreas Mohrc9ec8842001-01-24 19:37:13 +000053
54Solaris info:
Gerald Pfeiferd2b22892001-07-20 17:56:59 +000055 You will most likely need to build Wine with the GNU toolchain
Gerard Patel2895e7f2001-10-16 21:47:51 +000056 (gcc, gas, etc.). Warning : installing gas does *not* ensure that it
Andreas Mohra5589d52002-06-04 23:09:34 +000057 will be used by gcc. Recompiling gcc after installing gas or
Gerard Patel2895e7f2001-10-16 21:47:51 +000058 symlinking cc, as and ld to the gnu tools is said to be necessary.
59
Bang Jun-Young9048c492001-12-19 18:48:45 +000060NetBSD info:
61 Make sure you have the USER_LDT, SYSVSHM, SYSVSEM, and SYSVMSG options
62 turned on in your kernel.
63
Alexandre Julliard4e474032006-08-23 15:59:14 +020064MacOS info:
65 You need Xcode 2.4 or later to build properly on x86.
Andreas Mohrc08b9482003-04-04 22:12:21 +000066
67
68Supported file systems:
Gerard Patel2895e7f2001-10-16 21:47:51 +000069 Wine should run on most file systems. However, Wine will fail to start
70 if umsdos is used for the /tmp directory. A few compatibility problems have
Andreas Mohra0ff2b42002-02-27 01:30:32 +000071 also been reported using files accessed through Samba. Also, as NTFS
72 can only be used safely with readonly access for now, we recommend against
73 using NTFS, as Windows programs need write access almost everywhere.
74 In case of NTFS files, copy over to a writable location.
Andreas Mohrc9ec8842001-01-24 19:37:13 +000075
Andreas Mohrc08b9482003-04-04 22:12:21 +000076Basic requirements:
77 You need to have the X11 development include files installed
Gerald Pfeifer2d979b62006-02-28 23:19:19 +010078 (called xlib6g-dev in Debian and XFree86-devel in Red Hat).
Juergen Lockca851391999-11-28 19:48:24 +000079
Andreas Mohrc08b9482003-04-04 22:12:21 +000080Build tool requirements:
81 On x86 Systems gcc >= 2.7.2 is required.
82 Versions earlier than 2.7.2.3 may have problems when certain files
83 are compiled with optimization, often due to problems with header file
Alexandre Julliard4e474032006-08-23 15:59:14 +020084 management.
Andreas Mohrc165bca2000-10-22 23:47:27 +000085
Andreas Mohrc08b9482003-04-04 22:12:21 +000086 Of course you also need "make" (most likely GNU make).
Andreas Mohrc9ec8842001-01-24 19:37:13 +000087
Gerald Pfeifer2d979b62006-02-28 23:19:19 +010088 You also need flex version 2.5 or later and bison.
Andreas Mohra5589d52002-06-04 23:09:34 +000089
Andreas Mohrc08b9482003-04-04 22:12:21 +000090Optional support libraries:
Alexandre Julliard4e474032006-08-23 15:59:14 +020091 Run ./configure --verbose to see the optional libraries that could
92 be used but aren't found on your system.
93
James Juran0ff60a01999-04-26 14:57:06 +000094
Alexandre Julliardd6baf1b1999-07-18 15:47:22 +0000954. COMPILATION
Alexandre Julliarda69b88b1998-03-15 20:29:56 +000096
Andreas Mohrc9ec8842001-01-24 19:37:13 +000097In case you chose to not use wineinstall, run the following commands
98to build Wine:
Alexandre Julliard401710d1993-09-04 10:09:32 +000099
Alexandre Julliardd6baf1b1999-07-18 15:47:22 +0000100./configure
101make depend
102make
103
Andreas Mohra5589d52002-06-04 23:09:34 +0000104This will build the program "wine" and numerous support libraries/binaries.
Alexandre Julliarda0b2b1d1997-11-16 17:38:29 +0000105The program "wine" will load and run Windows executables.
Andreas Mohr1af53cb2000-12-09 03:15:32 +0000106The library "libwine" ("Winelib") can be used to compile and link
107Windows source code under Unix.
Alexandre Julliardd6baf1b1999-07-18 15:47:22 +0000108
Andreas Mohr1af53cb2000-12-09 03:15:32 +0000109To see compile configuration options, do ./configure --help.
Alexandre Julliarde2bfa4c1996-05-16 18:21:06 +0000110
Alexandre Julliard3a5816f1994-12-27 14:11:53 +0000111To upgrade to a new release by using a patch file, first cd to the
112top-level directory of the release (the one containing this README
113file). Then do a "make clean", and patch the release with:
114
Alexandre Julliard4e474032006-08-23 15:59:14 +0200115 bunzip2 -c patch-file | patch -p1
Alexandre Julliard3a5816f1994-12-27 14:11:53 +0000116
117where "patch-file" is the name of the patch file (something like
Alexandre Julliard4e474032006-08-23 15:59:14 +0200118wine-0.9.x.diff.bz2). You can then re-run "./configure", and then
Alexandre Julliardd6baf1b1999-07-18 15:47:22 +0000119run "make depend && make".
Alexandre Julliard8d24ae61994-04-05 21:42:43 +0000120
Alexandre Julliard4e474032006-08-23 15:59:14 +0200121
Alexandre Julliardd6baf1b1999-07-18 15:47:22 +00001225. SETUP
Alexandre Julliard8d24ae61994-04-05 21:42:43 +0000123
Alexandre Julliard7e56f681996-01-31 19:02:28 +0000124Once Wine has been built correctly, you can do "make install"; this
James Juran38a3d261999-01-01 18:45:52 +0000125will install the wine executable, the Wine man page, and a few other
126needed files.
Alexandre Julliard7e56f681996-01-31 19:02:28 +0000127
Andreas Mohrde53c482001-04-09 18:32:16 +0000128Don't forget to uninstall any conflicting previous Wine installation
129first. Try either "dpkg -r wine" or "rpm -e wine" or "make uninstall"
130before installing.
131
Dimi Paun12f9bb72005-05-10 13:26:14 +0000132See the Support area at http://www.winehq.org/ for configuration
133hints.
Alexandre Julliard8d24ae61994-04-05 21:42:43 +0000134
Andreas Mohra0ff2b42002-02-27 01:30:32 +0000135In case of library loading errors
136(e.g. "Error while loading shared libraries: libntdll.so"), make sure
137to add the library path to /etc/ld.so.conf and run ldconfig as root.
138
Alexandre Julliard4e474032006-08-23 15:59:14 +0200139
Alexandre Julliardd6baf1b1999-07-18 15:47:22 +00001406. RUNNING PROGRAMS
Alexandre Julliard8d24ae61994-04-05 21:42:43 +0000141
James Juran38a3d261999-01-01 18:45:52 +0000142When invoking Wine, you may specify the entire path to the executable,
Alexandre Julliard8d24ae61994-04-05 21:42:43 +0000143or a filename only.
Alexandre Julliardf41aeca1993-09-14 16:47:10 +0000144
Douglas Ridgway692389d1998-11-22 16:56:44 +0000145For example: to run Solitaire:
Alexandre Julliard5f721f81994-01-04 20:14:34 +0000146
Andreas Mohrc08b9482003-04-04 22:12:21 +0000147 wine sol (using the search Path as specified in
148 wine sol.exe the config file to locate the file)
Alexandre Julliard5f721f81994-01-04 20:14:34 +0000149
Andreas Mohrc08b9482003-04-04 22:12:21 +0000150 wine c:\\windows\\sol.exe (using DOS filename syntax)
Alexandre Julliard5f721f81994-01-04 20:14:34 +0000151
Andreas Mohrc08b9482003-04-04 22:12:21 +0000152 wine /usr/windows/sol.exe (using Unix filename syntax)
153
Dimitrie O. Paunf950d972004-05-06 23:51:43 +0000154 wine sol.exe /parameter1 -parameter2 parameter3
Andreas Mohrc08b9482003-04-04 22:12:21 +0000155 (calling program with parameters)
Alexandre Julliardf41aeca1993-09-14 16:47:10 +0000156
Alexandre Julliard4e474032006-08-23 15:59:14 +0200157Wine is not yet complete, so several programs may crash. In that crash
158you will be dropped into the debugger so that you can investigate and
159fix the problem. For more information on how to do this, please check
160the debugging section of the Wine Developer's Guide.
Alexandre Julliard58199531994-04-21 01:20:00 +0000161
Andreas Mohra6d83eb2000-12-27 04:02:46 +0000162
Dimi Paun12f9bb72005-05-10 13:26:14 +00001637. GETTING MORE INFORMATION
Alexandre Julliard8d24ae61994-04-05 21:42:43 +0000164
Andreas Mohr3d2a38c2001-06-29 01:41:03 +0000165WWW: A great deal of information about Wine is available from WineHQ at
Dimitrie O. Paunc0232542003-11-26 03:55:01 +0000166 http://www.winehq.org/ : various Wine Guides, application database,
Andreas Mohr3d2a38c2001-06-29 01:41:03 +0000167 bug tracking. This is probably the best starting point.
Andreas Mohr8cd93512000-01-29 21:12:58 +0000168
Dimitrie O. Paunc0232542003-11-26 03:55:01 +0000169FAQ: The Wine FAQ is located at http://www.winehq.org/FAQ
Alexandre Julliard46ea8b31998-05-03 19:01:20 +0000170
Andriy Palamarchukac3a9a32002-05-04 18:41:27 +0000171Usenet: You can discuss Wine-related issues and get help
172 on comp.emulators.ms-windows.wine.
173
Dimitrie O. Paunc0232542003-11-26 03:55:01 +0000174Bugs: Report bugs to Wine Bugzilla at http://bugs.winehq.org
Andriy Palamarchukac3a9a32002-05-04 18:41:27 +0000175 Please search the bugzilla database to check whether your
176 problem is already found before posting a bug report. You can
177 also post bug reports to comp.emulators.ms-windows.wine.
Andriy Palamarchukac3a9a32002-05-04 18:41:27 +0000178
Jeff Smith344ed412002-12-24 00:56:33 +0000179IRC: Online help is available at channel #WineHQ on irc.freenode.net.
Andreas Mohr8cd93512000-01-29 21:12:58 +0000180
Alexandre Julliard4e474032006-08-23 15:59:14 +0200181GIT: The current Wine development tree is available through GIT.
182 Go to http://www.winehq.org/site/git for more information.
Alexandre Julliard46ea8b31998-05-03 19:01:20 +0000183
Andreas Mohr3d2a38c2001-06-29 01:41:03 +0000184Mailing lists:
Alexandre Julliard4e474032006-08-23 15:59:14 +0200185 There are several mailing lists for Wine users and developers;
186 see http://www.winehq.org/forums for more information.
187
188Wiki: The Wine Wiki is located at http://wiki.winehq.org
Andreas Mohr3d2a38c2001-06-29 01:41:03 +0000189
Andreas Mohrb6e84182002-02-02 18:03:55 +0000190If you add something, or fix a bug, please send a patch (in 'diff -u'
Dimitrie O. Paunc0232542003-11-26 03:55:01 +0000191format) to wine-patches@winehq.org list for inclusion in the next
Andriy Palamarchukac3a9a32002-05-04 18:41:27 +0000192release.
Alexandre Julliard8d24ae61994-04-05 21:42:43 +0000193
Alexandre Julliard3a5816f1994-12-27 14:11:53 +0000194--
195Alexandre Julliard
Dimitrie O. Paunc0232542003-11-26 03:55:01 +0000196julliard@winehq.org