Skip to content
Snippets Groups Projects
README 6.51 KiB
Newer Older
  • Learn to ignore specific revisions
  • Alexandre Julliard's avatar
    Alexandre Julliard committed
    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.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    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.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Andreas Mohr's avatar
    Andreas Mohr committed
    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
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    To compile and run Wine, you must have one of the following:
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Marcus Meissner's avatar
    Marcus Meissner committed
    	Linux version 2.0.36 or above
    	FreeBSD-current or FreeBSD 3.0 or later
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    	Solaris x86 2.5 or later
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    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.
    
    
    Similarly if you are 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.
    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/
    
    
    You need to have the X11 development include files installed
    (called xlib6g-dev in Debian and XFree86-devel-4.0.1-1 in RedHat).
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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 3.4j. SuSE calls these packages xpm and xpm-devel.
    
    
    On x86 Systems gcc >= 2.7.2 is required. You also need flex version 2.5
    or later and yacc. Bison will work as a replacement for yacc. If you are
    using RedHat, install the flex and bison packages.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    ./configure
    make depend
    make
    
    This will build the library "libwine.a" and the program "wine".  
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    The program "wine" will load and run Windows executables.
    The library "libwine.a" can be used to compile and link Windows source
    
    code under Unix.
    
    If you do not intend to compile Windows source code, use
    "./configure --disable-lib" to skip building the library and reduce disk
    space requirements. If you have an ELF compiler (which you probably do),
    you can use "./configure --enable-dll" to build a shared library instead.
    To see other configuration options, do ./configure --help.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    where "patch-file" is the name of the patch file (something like
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    Wine-yymmdd.diff.gz). You can then re-run "./configure", and then
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    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.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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.
    
    Andreas Mohr's avatar
    Andreas Mohr committed
    
    
    See http://www.winehq.com/config.html for further configuration hints.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    When invoking Wine, you may specify the entire path to the executable,
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    or a filename only.
    
    
    For example: to run Solitaire:
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    	wine sol		   (using the searchpath to locate the file)
    	wine sol.exe
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    	wine c:\\windows\\sol.exe  (using a DOS filename)
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    	wine /usr/windows/sol.exe  (using a Unix filename)
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    Note: the path of the file will also be added to the path when
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
          a full name is supplied on the commandline.
    
    
    Andreas Mohr's avatar
    Andreas Mohr committed
    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.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    DOCU:	grep -i "SearchString" `find documentation/`|more
    
    
    Ove Kåven's avatar
    Ove Kåven committed
    FAQ:	The Wine FAQ is located at http://www.winehq.com/faq.html.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    WWW:	A great deal of information about Wine is available from WineHQ at
    
    	http://www.winehq.com/. Untested patches against the current release
    	are available on the wine-patches mailing list; see 
    	http://www.winehq.com/dev.html#ml for more information.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    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. 
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    	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.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    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.html for more information.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    If you add something, or fix a bug, please send a patch ('diff -u'
    
    format preferred) to julliard@winehq.com for inclusion in the next
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    release.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    --
    Alexandre Julliard