Commit | Line | Data |
---|---|---|
3a5816f8 AJ |
1 | 1. INTRODUCTION |
2 | ||
692389d0 DR |
3 | Wine is a program which allows running Microsoft Windows programs |
4 | (including DOS, Windows 3.x and Win32 executables) on Unix. It | |
0ff60a08 | 5 | consists of a program loader which loads and executes a Microsoft |
692389d0 DR |
6 | Windows binary, and a library that implements Windows API calls using |
7 | their Unix or X11 equivalents. The library may also be used for | |
8 | porting Win32 code into native Unix executables. | |
3a5816f8 | 9 | |
692389d0 DR |
10 | Wine is free software, and its license (contained in the file LICENSE) |
11 | is BSD style. Basically, you can do anything with it except claim | |
12 | that you wrote it. | |
3a5816f8 | 13 | |
d6baf1bb | 14 | 2. QUICK START |
3a5816f8 | 15 | |
581fc926 AM |
16 | Whenever you compile from source, it is recommended to use the Wine |
17 | Installer to build and install wine. From the top-level Wine | |
18 | directory (which contains this file), run: | |
d6baf1bb AJ |
19 | |
20 | ./tools/wineinstall | |
21 | ||
22 | Run programs as "wine [options] program". For more information and | |
23 | problem resolution, read the rest of this file, the Wine manpage, | |
24 | and the files in the documentation directory in the Wine source. | |
25 | ||
26 | 3. REQUIREMENTS | |
401710d7 | 27 | |
0ff60a08 | 28 | To compile and run Wine, you must have one of the following: |
f41aeca9 | 29 | |
9e153184 MM |
30 | Linux version 2.0.36 or above |
31 | FreeBSD-current or FreeBSD 3.0 or later | |
a69b88b2 | 32 | Solaris x86 2.5 or later |
f41aeca9 | 33 | |
c9ec8846 AM |
34 | Linux info: |
35 | Although Linux version 2.0.x will mostly work, certain features | |
36 | (specifically LDT sharing) required for properly supporting Win32 | |
37 | threads were not implemented until kernel version 2.2. If you get | |
38 | consistent thread-related crashes, you may want to upgrade to 2.2. | |
39 | Also, some bugs were fixed and additional features were added | |
40 | late in the Linux 2.0.x series, so if you have a very old Linux kernel, | |
41 | you may want to upgrade to at least the latest 2.0.x release. | |
42 | ||
43 | FreeBSD info: | |
44 | On FreeBSD, you may want to apply an LDT sharing patch too | |
45 | (unless you are tracking -current where it finally has | |
46 | been committed just recently), and there also is a small sigtrap | |
47 | fix thats needed for wine's debugger. (Actually now that its using | |
48 | ptrace() by default it may no longer make a difference but it still | |
49 | doesn't hurt...) And if you're running a system from the -stable | |
50 | branch older than Nov 15 1999, like a 3.3-RELEASE, then you also | |
51 | need to apply a signal handling change that was MFC'd at that date. | |
52 | Make sure you have the USER_LDT, SYSVSHM, SYSVSEM, and SYSVMSG options | |
53 | turned on in your kernel. | |
54 | More information including patches for the -stable branch is in | |
55 | the ports tree: | |
56 | ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/ports/emulators/wine/files/ | |
57 | ||
58 | Solaris info: | |
59 | You will most likely need to build wine with the GNU toolchain | |
60 | (gcc, gas, etc.) | |
61 | ||
62 | Wine requires kernel-level threads to run. Currently, only Linux | |
63 | version 2.0 or later, FreeBSD-current or FreeBSD 3.0 or later, | |
64 | and Solaris x86 version 2.5 or later are supported. | |
65 | Other operating systems which support kernel threads may be supported | |
66 | in the future. | |
ca851392 | 67 | |
c165bca8 | 68 | You need to have the X11 development include files installed |
c9ec8846 AM |
69 | (called xlib6g-dev in Debian and XFree86-devel in RedHat). |
70 | To use wine's support for multi-threaded applications, your X libraries | |
71 | must be reentrant, which is probably the default by now. | |
72 | If you have libc6 (glibc2), or you compiled the X libraries yourself, | |
73 | they were probably compiled with the reentrant option enabled. | |
c165bca8 | 74 | |
6abb89c3 | 75 | You also need to have libXpm installed on your system. The sources for |
d6baf1bb AJ |
76 | it are available at ftp.x.org and all its mirror sites in the directory |
77 | /contrib/libraries. If you are using RedHat, libXpm is distributed as the | |
78 | xpm and xpm-devel packages. Debian distributes libXpm as xpm4.7, xpm4g, | |
c9ec8846 | 79 | and xpm4g-dev. SuSE calls these packages xpm and xpm-devel. |
0ff60a08 | 80 | |
c9ec8846 AM |
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 | |
84 | management. pgcc currently doesn't work with wine. The cause of this problem | |
85 | is unknown. | |
86 | ||
87 | You also need flex version 2.5 or later and yacc. | |
88 | Bison will work as a replacement for yacc. If you are | |
89 | using RedHat or Debian, install the flex and bison packages. | |
6abb89c3 | 90 | |
0ee5f8c6 JM |
91 | In case you want to build the documentation yourself, you'll also |
92 | need the DocBook tools (db2html, db2ps, db2pdf). | |
93 | ||
d6baf1bb | 94 | 4. COMPILATION |
a69b88b2 | 95 | |
c9ec8846 AM |
96 | In case you chose to not use wineinstall, run the following commands |
97 | to build Wine: | |
401710d7 | 98 | |
d6baf1bb AJ |
99 | ./configure |
100 | make depend | |
101 | make | |
102 | ||
1af53cbb | 103 | This will build the program "wine" and numerous support libraries/binaries. |
a0b2b1d0 | 104 | The program "wine" will load and run Windows executables. |
1af53cbb AM |
105 | The library "libwine" ("Winelib") can be used to compile and link |
106 | Windows source code under Unix. | |
d6baf1bb | 107 | |
1af53cbb | 108 | To see compile configuration options, do ./configure --help. |
e2bfa4c7 | 109 | |
3a5816f8 AJ |
110 | To upgrade to a new release by using a patch file, first cd to the |
111 | top-level directory of the release (the one containing this README | |
112 | file). Then do a "make clean", and patch the release with: | |
113 | ||
114 | gunzip -c patch-file | patch -p1 | |
f41aeca9 | 115 | |
3a5816f8 | 116 | where "patch-file" is the name of the patch file (something like |
ff8331ea | 117 | Wine-yymmdd.diff.gz). You can then re-run "./configure", and then |
d6baf1bb | 118 | run "make depend && make". |
5f721f81 | 119 | |
3a5816f8 | 120 | |
d6baf1bb | 121 | 5. SETUP |
8d24ae6d | 122 | |
7e56f684 | 123 | Once Wine has been built correctly, you can do "make install"; this |
38a3d264 JJ |
124 | will install the wine executable, the Wine man page, and a few other |
125 | needed files. | |
7e56f684 | 126 | |
de53c487 AM |
127 | Don't forget to uninstall any conflicting previous Wine installation |
128 | first. Try either "dpkg -r wine" or "rpm -e wine" or "make uninstall" | |
129 | before installing. | |
130 | ||
0ee5f8c6 JM |
131 | If you want to build the documentation, you can run "make" in the |
132 | documentation directory. | |
133 | ||
73be8d1c AJ |
134 | Wine requires a configuration file named wine.conf. Its default |
135 | location is /usr/local/etc, but you can supply a different name when | |
136 | configuring wine by using the --prefix or --sysconfdir options to | |
137 | ./configure. You can also override the global configuration file with | |
138 | a file named "config" in your ~/.wine directory. | |
8d24ae6d | 139 | |
7e56f684 | 140 | The format of this file is explained in the man page. The file |
73be8d1c AJ |
141 | documentation/samples/config contains an example configuration file |
142 | which has to be adapted and copied to one of the two locations | |
143 | mentioned above. | |
8a82991a | 144 | |
d6baf1bb | 145 | See http://www.winehq.com/config.html for further configuration hints. |
8d24ae6d | 146 | |
5142150f AM |
147 | In order to verify the correctness of the environment you need for |
148 | Wine to run successfully, run "./tools/winecheck | less". You'll get | |
149 | a percentage score indicating "Wine configuration correctness". | |
8d24ae6d | 150 | |
d6baf1bb | 151 | 6. RUNNING PROGRAMS |
8d24ae6d | 152 | |
38a3d264 | 153 | When invoking Wine, you may specify the entire path to the executable, |
8d24ae6d AJ |
154 | or a filename only. |
155 | ||
692389d0 | 156 | For example: to run Solitaire: |
8d24ae6d AJ |
157 | |
158 | wine sol (using the searchpath to locate the file) | |
159 | wine sol.exe | |
5f721f81 | 160 | |
692389d0 | 161 | wine c:\\windows\\sol.exe (using a DOS filename) |
5f721f81 | 162 | |
692389d0 | 163 | wine /usr/windows/sol.exe (using a Unix filename) |
f41aeca9 | 164 | |
3a5816f8 | 165 | Note: the path of the file will also be added to the path when |
5819953c AJ |
166 | a full name is supplied on the commandline. |
167 | ||
581fc926 AM |
168 | Wine is not yet complete, so some programs may crash. Provided you set up |
169 | winedbg correctly according to documentation/debugger.sgml, you will be dropped | |
38a3d264 JJ |
170 | into a debugger so that you can investigate and fix the problem. For more |
171 | information on how to do this, please read the file documentation/debugging. | |
172 | If you post a bug report, please read the file documentation/bugreports to | |
173 | see what information is required. | |
8d24ae6d | 174 | |
a6d83eba AM |
175 | You should backup all your important files that you give Wine access |
176 | to, or use a special Wine copy of them, as there have been some cases | |
177 | of users reporting file corruption. Do NOT run Explorer, for instance, | |
178 | if you don't have a proper backup, as it renames/cripples several | |
179 | directories sometimes. | |
180 | ||
8d24ae6d | 181 | |
d6baf1bb | 182 | 7. GETTING MORE INFORMATION |
46ea8b3f | 183 | |
8cd93514 AM |
184 | DOCU: grep -i "SearchString" `find documentation/`|more |
185 | ||
c9ec8846 | 186 | FAQ: The Wine FAQ is located at http://www.winehq.com/FAQ |
46ea8b3f | 187 | |
38a3d264 | 188 | WWW: A great deal of information about Wine is available from WineHQ at |
c9ec8846 AM |
189 | http://www.winehq.com/, especially various user guides. |
190 | Untested patches against the current release | |
692389d0 | 191 | are available on the wine-patches mailing list; see |
1af53cbb | 192 | http://www.winehq.com/dev.shtml#ml for more information. |
46ea8b3f | 193 | |
8cd93514 | 194 | HOWTO: The Wine HOWTO is available at |
0ff60a08 JJ |
195 | http://www.westfalen.de/witch/wine-HOWTO.txt . |
196 | ||
38a3d264 JJ |
197 | Usenet: Please browse old messages on http://www.dejanews.com/ to check whether |
198 | your problem is already fixed before posting a bug report to the | |
199 | newsgroup. | |
46ea8b3f | 200 | |
38a3d264 JJ |
201 | The best place to get help or to report bugs is the Usenet newsgroup |
202 | comp.emulators.ms-windows.wine. Please read the file | |
203 | documentation/bugreports to see what information should be included | |
204 | in a bug report. | |
46ea8b3f | 205 | |
8cd93514 AM |
206 | IRC: Online help is available at channel #WineHQ on IRCnet. |
207 | ||
38a3d264 | 208 | CVS: The current Wine development tree is available through CVS. |
1af53cbb | 209 | Go to http://www.winehq.com/dev.shtml for more information. |
8d24ae6d | 210 | |
ff8331ea | 211 | If you add something, or fix a bug, please send a patch ('diff -u' |
0ee5f8c6 JM |
212 | format preferred) to julliard@winehq.com or to the |
213 | wine-patches@winehq.com mailing list for inclusion in the next | |
ff8331ea | 214 | release. |
8d24ae6d | 215 | |
3a5816f8 AJ |
216 | -- |
217 | Alexandre Julliard | |
a46f5ad0 | 218 | julliard@winehq.com |