2 .TH WINE 1 "February 3, 1999" "Version 990131" "Windows On Unix"
4 wine \- run Windows programs on Unix
6 .BI "wine " "[wine_options] " "program1 " "[program2 ... ]"
8 For instructions on passing arguments to Windows programs, please see the
11 section of the man page.
15 loads and runs the given program, where the program is a DOS, Windows 3.x,
19 currently runs a growing list of applications written for both Win3.1 and
20 Win95. Older, simpler applications work better than newer, more complex
21 ones. A large percentage of the API has been implemented, although there
22 are still several major pieces of work left to do.
26 will run under any Linux kernel more recent than 0.99.13, or
27 under recent releases of NetBSD/i386, FreeBSD and OpenBSD/i386. Some bugs
28 were fixed and additional features were added late in the Linux 2.0.x
29 series, so if you have an old Linux kernel, you may want to upgrade to the
30 latest 2.0.x release. If you have FreeBSD, make sure you have the USER_LDT,
31 SYSVSHM, SYSVSEM, and SYSVMSG options turned on in your kernel. If you
32 are building Wine on Solaris, you will most likely need to build Wine
33 with the GNU toolchain (gcc, gas, etc.)
35 The current support for multithreaded applications relies on the
37 system call, which is currently only available on Linux. It should be
38 possible to implement this for other operating systems, however.
41 must be installed. To use Wine's support for multithreaded applications,
42 your X libraries must be reentrant. If you have libc6 (glibc2), or you
43 compiled the X libraries yourself, they were probably compiled with the
44 reentrant option enabled.
47 must be installed. If you're using Red Hat, make sure the following
48 packages are installed: XFree86-devel, xpm, and xpm-devel. If you're
49 using Debian, the packages you need are xpm4g and xpm4g-dev. If you
50 have some other distribution, please send a list of packages required
51 to the address listed in the
54 section to get it included in this man page.
57 2.7.x or later is required to build
59 Versions earlier than 2.7.2.3 may have problems when certain files are
60 compiled with optimization.
63 currently doesn't work with wine. The cause of this problem is unknown.
68 are required. Bison can be used in replace of yacc. If you have Redhat,
69 make sure the bison and flex packages are installed.
73 run "./configure" in the top-level directory of the source, which will
74 detect your specific setup and create the Makefiles. You can run
75 "./configure --help" to see the available configuration options. Then do
76 "make depend; make" to build the
78 executable, and then "make install" to install it. By default,
80 is installed in the /usr/local/ heirarchy; you can specify a different path with
81 the --prefix option when running
84 For more information, see the
86 file contained in the source distribution.
93 Use the named configuration file rather than the default
94 (/usr/local/etc/wine.conf or ~/.winerc).
97 Enter the debugger before starting application
99 .I -debugmsg [xxx]#name[,[xxx1]#name1][,<+|->relay=yyy1[:yyy2]]
100 Turn debugging messages on or off.
103 xxx is optional and can be one of the following:
109 If xxx is not specified, all debugging messages for the specified
110 channel are turned on. Each channel will print messages about a particular
111 component of Wine. # is required and can be either + or -. Note that
112 there is not a space after the comma between names. yyy are either the
113 name of a whole DLL or a single API entry by Name you either
114 want to include or exclude from the relay listing. These names must be in
115 the case as names used in the relaylisting. You can do the same for snoop.
119 .I -debugmsg warn+dll,+heap
120 will turn on DLL warning messages and all heap messages.
122 .I -debugmsg fixme-all,warn+cursor,+relay
123 will turn off all FIXME messages, turn on cursor warning messages, and turn
124 on all relay messages (API calls).
126 .I -debugmsg -relay=LeaveCriticalSection:EnterCriticalSection
127 will turn on all relay messages except for LeaveCriticalSection and
128 EnterCriticalSection.
130 .I -debugmsg +relay=ADVAPI32
131 will only turn on relay messages into the ADVAPI32 code.
133 The full list of names is: all, accel, advapi, animate, aspi, atom,
134 bitblt, bitmap, caret, cd, cdaudio, class, clipboard, clipping, combo,
135 comboex, comm, commctrl, commdlg, console, crtdll, cursor, datetime, dc,
136 dde, ddeml, ddraw, debug, dialog, dinput, dll, dosfs, dosmem, dplay, driver,
137 dsound, edit, event, exec, file, fixup, font, gdi, global, graphics, header,
138 heap, hook, hotkey, icon, imagehlp, imagelist, imm, int, int10, int16, int17,
139 int19, int21, int31, io, ipaddress, key, keyboard, ldt, listbox, listview,
140 local, mci, mcianim, mciwave, mdi, menu, message, metafile, midi, mmaux, mmio,
141 mmsys, mmtime, module, monthcal, mpr, msacm, msg, nativefont, nonclient, ntdll,
142 ole, pager, palette, pidl, print, process, profile, progress, prop, psapi,
143 psdrv, rebar, reg, region, relay, resource, s, scroll, security, segment,
144 selector, sem, sendmsg, server, shell, shm, snoop, sound, static, statusbar,
145 stress, string, syscolor, system, tab, task, text, thread, thunk, timer,
146 toolbar, toolhelp, tooltips, trackbar, treeview, tweak, uitools, updown, ver,
147 virtual, vxd, win, win16drv, win32, wing, winsock, wnet, x11, x11drv.
149 For more information on debugging messages, see the file
150 .I documentation/debug-msgs
151 in the source distribution.
155 Change the depth to use for multiple-depth screens
158 Use a desktop window of the given geometry
161 Use the specified display
163 .I -dll name[,name[,...]]={native|elfdll|so|builtin}[,{n|e|s|b}[,...]][:...]
164 Selects the override type and load order of dll used in the loading process
165 for any dll. The default is set in wine.conf or ~/.winerc. There are
166 currently four types of libraries that can be loaded into a process' address
167 space: Native windows dlls (
169 ), ELF encapsulated windows dlls (
171 ), native ELF libraries (
173 )and wine internal dlls (
175 ). The type may be abbreviated with the first letter of the type (
177 ). Each sequence of orders must be seperated by commas.
179 Each dll may have its own specific load order. The load order determines
180 which verion of the dll is attempted to be loaded into the address space. If
181 the first fails, then the next is tried and so on. Different load orders can
182 be specified by seperating the entries with a colon. Multiple libraries
183 with the same load order can be separated with commas.
187 .I -dll comdlg32,commdlg=n,b
189 Try to load comdlg32 and commdlg as native windows dll first and try
190 the builtin version if the native load fails.
192 .I -dll comdlg32,commdlg=e,n:shell,shell32=b:comctl32,commctrl=n
194 Try to load comdlg32 and commdlg as elfdll first and try the native version
195 if the elfdll load fails; load shell32/shell always as builtin and
196 comctl32/commctrl always as native.
198 Note: It is wise to keep dll pairs (comdlg32/commdlg, shell/shell32, etc.)
199 having exactly the same load order. This will prevent mismatches at runtime.
200 See also configuration file format below.
203 Read only files may not be opened in write mode (the default is to
204 allow opening read-only files for writing, because most Windows
205 programs always request read-write access, even on CD-ROM drives...).
208 Use a "standard" color map.
216 (one of Ca, Cs, Da, De, En, Eo, Es, Fi, Fr, Hu, It, Ko, No, Pl, Pt, Ru, Sv, Wa)
219 Create each top-level window as a properly managed X window
222 Determines the mode in which
224 is started. Possible mode names are
228 Enhanced mode is the default (when no -mode option is specified).
231 Set the application name
234 Use a private color map
237 Turn on synchronous display mode
240 Specify which Windows version WINE should imitate.
241 Possible arguments are: win31, win95, nt351, and nt40.
243 .SH PROGRAM/ARGUMENTS
244 The program name may be specified in DOS format (
246 C:\\WINDOWS\\SOL.EXE)
248 .I /msdos/windows/sol.exe
249 ). The program being executed may be passed arguments by adding them on
250 to the end of the command line invoking
252 (such as: wine "notepad C:\\TEMP\\README.TXT"). Note that
253 the program name and its arguments
255 be passed as a single parameter, which is usually accomplished by placing
256 them together in quotation marks. Multiple applications may be started
257 by placing all of them on the command line (such as: wine notepad clock).
258 .SH CONFIGURATION FILE
260 expects a configuration file (
261 .I /usr/local/etc/wine.conf
263 conform to the following rules (the format is just like a Windows .ini
264 file). The actual file name may be specified during the execution of
267 script with the --sysconfdir option. Alternatively, you may have a
269 file of this format in your home directory or have the environment variable
271 pointing to a configuration file, or use the -config option on the command
273 .SH ENVIRONMENT VARIABLES
275 makes the environment variables of the shell from which
277 is started accesible to the windows/dos processes started. So use the
278 appropriate syntax for your shell to enter environment variables you need.
279 .SH CONFIGURATION FILE FORMAT
280 All entries are grouped in sections; a section begins with the line
284 and continues until the next section starts. Individual entries
285 consist of lines of the form
289 The value can be any text string, optionally included in single or
290 double quotes; it can also contain references to environment variables
293 Supported section names and entries are listed below.
297 This section is used to specify the root directory and type of each
299 drive, since most Windows applications require a DOS/MS-Windows based
300 disk drive & directory scheme. There is one such section for every
301 drive you want to configure.
303 .I format: Path = <rootdirectory>
307 If you mounted your dos partition as
309 and installed Microsoft Windows in
310 C:\\WINDOWS then you should specify
316 .I format: Type = <type>
320 Used to specify the drive type; supported types are floppy, hd, cdrom
323 .I format: Label = <label>
327 Used to specify the drive label; limited to 11 characters.
329 .I format: Serial = <serial>
333 Used to specify the drive serial number, as an 8-character hexadecimal
336 .I format: Filesystem = <fstype>
340 Used to specify the type of the file system Wine should emulate on a given
341 directory structure/underlying file system.
343 Supported types are msdos (or fat), win95 (or vfat), unix.
347 win95 for ext2fs, VFAT and FAT32
349 msdos for FAT16 (ugly)
351 You definitely don't want to use "unix" unless you intend to port programs using Winelib.
353 Always try to avoid using FAT16. Use VFAT/FAT32 OS file system driver instead !
357 .I format: windows = <directory>
361 Used to specify a different Windows directory
363 .I format: system = <directory>
365 default: C:\\WINDOWS\\SYSTEM
367 Used to specify a different system directory
369 .I format: temp = <directory>
373 Used to specify a directory where Windows applications can store
376 .I format: path = <directories separated by semi-colons>
378 default: C:\\WINDOWS;C:\\WINDOWS\\SYSTEM
380 Used to specify the path which will be used to find executables and .DLL's.
382 .I format: symboltablefile = <filename>
386 Used to specify the path and file name of the symbol table used by the built-in
391 .I format: EXTRA_LD_LIBRARY_PATH=/usr/local/lib/wine[:/more/path/to/search[:...]]
393 The path will be appended to any existing LD_LIBRARY_PATH from the
394 environment for the search of elfdlls and .so libraries.
396 .I format: DefaultLoadOrder=native,elfdll,so,builtin
398 A comma seperated list of module-types to try to load in that specific
399 order. The DefaultLoadOrder key is used as a fallback when a module is
400 not specified explicitely. If the DefaultLoadOrder key is not found,
401 then the order "native,elfdll,so,builtin" is used.
403 Case is not (yet) important and only the first letter of each type is enough
404 to identify the type n[ative], e[lfdll], s[o], b[uiltin]. Also whitespace is
405 ignored. Keep everything in lower case to be sure that your entries keep the
406 same meaning. See also commandline option
408 for details about the alowable types.
412 There are no explicit keys defined other than module/library names. A comma
413 separated list of modules is followed by an assignment of the load-order
414 for these specific modules. See above for possible types. You should not
415 specify an extension.
419 .I kernel32, gdi32, user32 = builtin
421 .I kernel, gdi, user = builtin
423 .I comdlg32 = elfdll, native, builtin
425 .I commdlg = native, builtin
427 .I version, ver = elfdll, native, builtin
429 Changing the load order of kernel/kernel32, gdi/gdi32 and user/user32 to
430 anything other than builtin will cause wine to fail because wine cannot
431 use native versions for these libraries (user[32] and gdi[32] might work
432 native someday, but kernel[32] will never work native). These libraries are
433 also the last to be converted to elfdlls and will live as builtins for quite
436 Always make sure that you have some kind of strategy in mind when you start
437 fiddling with the current defaults and needless to say that you must know
442 This is a simple pairing in the form 'name1 = name2'. It is supposed to
443 identify the dlls that cannot live without eachother unless they are
444 loaded in the same format. Examples are common dialogs and controls,
445 shell, kernel, gdi, user, etc...
447 The code will issue a warning if the loadorder of these pairs are different
448 and might cause hard-to-find bugs due to incompatible pairs loaded at
449 run-time. Note that this pairing gives
451 guarantee that the pairs
452 actually get loaded as the same type, nor that the correct versions are
453 loaded (might be implemented later). It merely notes obvious trouble.
459 .I commdlg = comdlg32
461 The implementation will probably change in a later stage to force pairs to
462 be loaded correctly, but there are also drawbacks with such an approach.
466 .I format: com[12345678] = <devicename>
470 Used to specify the devices which are used as com1 - com8.
474 .I format: lpt[12345678] = <devicename>
478 Used to specify the devices which are used as lpt1 - lpt8.
482 .I format: file = <filename or CON when logging to stdout>
486 Used to specify the file which will be used as
489 .I format: exclude = <message names separated by semicolons>
493 Used to specify which messages will be excluded from the logfile.
495 .I format: include = <message names separated by semicolons>
498 .br Used to specify which messages will be included in the logfile.
502 .I format: WineLook=<Win31|Win95|Win98>
506 Use Win95-like window displays or Win3.1-like window displays.
507 .SH SAMPLE CONFIGURATION FILE
508 A sample configuration file is distributed as
510 in the top-level directory of the source distribution.
513 is available thanks to the work of many developers. For a listing
514 of the authors, please see the file
516 in the top-level directory of the source distribution.
519 A status report on many appplications is available from
520 .I http://www.winehq.com/Apps.
521 Please add entries to this list for applications you currently run.
523 Bug reports and successes may be posted to
524 .I comp.emulators.ms-windows.wine.
525 If you want to post a bug report, please read the file
526 .I documentation/bugreports
527 in the Wine source to see what information is necessary.
529 For problems and suggestions with this manpage, please send a note to
530 James Juran <jrj120@psu.edu>.
532 The most recent public version of
534 can be obtained via FTP from metalab.unc.edu or tsx-11.mit.edu in the
535 /pub/linux/ALPHA/Wine/development directory. The releases are in the
536 format 'Wine-yymmdd.tar.gz', or 'Wine-yymmdd.diff.gz' for the diff's
537 from the previous release.
539 The latest snapshot of the code may be obtained via CVS. For information
540 on how to do this, please see
542 http://www.winehq.com/dev.html
546 development headquarters, is at
547 .I http://www.winehq.com/.
548 This website contains a great deal of information about
550 as well as a collection of unofficial patches against the current release.
555 .I comp.emulators.ms-windows.wine.
556 All discussions about the project take place in this forum.
560 .I /usr/local/bin/wine
561 The Wine program loader.
563 .I /usr/local/bin/dosmod
564 The DOS program loader.
566 .I /usr/local/etc/wine.conf
567 Global configuration file for wine.
570 User-specific configuration file
572 .I /usr/local/lib/wine.sym
573 Global symbol table (used in debugger)