Update lfs-uefi patch
[linux_from_scratch_hints.git] / wine.txt
blob566d77214dea3fe0b84a2ef7aa3a461ee51caa48
1 AUTHOR: Leslie Polzer <leslie.polzer@gmx.net>
3 DATE: 2003-09-14
5 LICENSE: GNU Free Documentation License Version 1.2
7 SYNOPSIS: Compiling and configuring WINE
9 DESCRIPTION:
10 This guide documents how to compile and install WINE on an LFS system.
12 PREREQUISITES:
13 An installed version of Microsoft Windows.
15 HINT:
17 Contents
18 --------
19 1. What is WINE?
20 2. Requirements
21         2.1 Overview
22         2.2 Installation notes
23 3. Getting, configuring and compiling WINE
24 4. Postconfiguration
25 5. Running applications with WINE
26 6. Troubleshooting
27 7. References and pointers
30 1. What is WINE?
31 ----------------
32 WINE is, as stated on its website, a free implementation of Windows for
33 Unix - in other words a program that enables you to run Windows
34 applications on your Unix-Box quite comfortably.
35 WINE also comes with a library called WineLib with which you are able to
36 compile source-code using Windows system calls, but since open-source is
37 not a big issue in the Windows world (most open-source stuff there comes
38 from ported Unix apps anyway) we won't discuss it here.
40 IMPORTANT: I assume that you have a native Microsoft Windows installation on
41 a separate partition and that it is mounted.
42 I do not have any experience with a full Windows replacement and won't give
43 you instructions on how to do this, because I don't like talking or even
44 giving advice about topics I am not competent enough with.
47 2. Requirements
48 ---------------
51 2.1 Overview
52 ------------
53 - X11R6, most likely the XFree86 implementation - see the xfree86* hints.
54 - Freetype2, if you want True Type support, which I assume.
55 - OpenGL libraries and header files (that is, if you want OpenGL support!);
56         NVidia-users read nvidia_glx.txt, others install the Mesa libs:
57         http://prdownloads.sourceforge.net/mesa3d/MesaLib-4.0.4.tar.bz2?download
60 2.2 Installation notes
61 ----------------------
62 Modify the file
64         include/freetype/config/ftoption.h
66 in the Freetype2 source tree:
68 Change the line
70         #undef  TT_CONFIG_OPTION_BYTECODE_INTERPRETER
74         #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER
76 and compile Freetype2 with the usual
78 ./configure --prefix=/usr/X11R6 --with-gnu-ld
79 make
80 make install
81 ldconfig
83 Be root when executing the last two commands.
86 3. Getting, configuring and compiling WINE
87 ------------------------------------------
88 Get the latest snapshot from
90         http://www.ibiblio.org/pub/Linux/ALPHA/wine/development/
92 Unpack with
94         tar xvfz Wine-xxxxxxxx.tar.gz
96 and cd to directory Wine-xxxxxxxx.
99 Now there is more than one way to do the installation.
100 You can either do configuring and compiling for yourself
101 or use tools/wineinstall. The latter method is more convenient,
102 because it automatically creates a configuration file and
103 is able to find your Windows partition (if it is mounted).
105 I will use a combination to get the best of both worlds :)
106 First, type
108 ./configure --help
110 read the available options and pick what you need.
111 Run configure again with these options and check whether
112 all you want (most notably Freetype2 and OpenGL) was found.
113 To get really sure that OpenGL support will be build, type
115         cat include/config.h | grep OPENGL
117 If the output of this command doesn't say
119         #define HAVE_OPENGL 1
121 OpenGL won't be built and there's a problem to fix!
123 NOTE: Remember to delete config.cache when re-configuring.
125 If you are content with the output of configure, enter
126 the directory tools and open the file 'wineinstall'
127 with your favorite editor. Skip the big comment block at the
128 beginning and look at the configuration defaults. You may want
129 to change 'CONFARGS' to reflect your desired configure options
130 (e.g. --enable-opengl) and 'prefix' to select the installation
131 prefix. If it is requested, I will provide sed statements and a
132 small script for this.
134 Bear with me, we're almost done:
135 Go back to the toplevel source dir, execute
137         tools/wineinstall
139 answer a few questions and get some coffee.
142 4. Postconfiguration
143 --------------------
144 Impatient people like me can go straight to step 5 and try
145 to start a simple application like Solitaire. If it doesn't
146 work or you want to know more about WINE configuration, you
147 can always return to this step.
149 Review the file ~/.wine/config with your favorite editor.
150 If you do not have this file (probably because you installed
151 WINE without wineinstall), copy
153         WINESOURCEDIR/documentation/samples/config
155 to ~/.wine/config
157 Comments in the config file are denoted with a semi-colon (;),
158 statements are terminated by a newline.
159 First section is about drives. Syntax example:
161         [Drive C]
162         "Path" = "/mnt/win"
163         "Type" = "hd"
164         "Filesystem" = "vfat"
166 You should use fstype 'vfat' for hard-disk partitions and
167 fstype 'win95' for Floppy disk and CD-ROM drives. I can't tell
168 you what type of fs you need to use with NTFS partitions, probably
169 it doesn't work with those as NTFS kernel support is still
170 considered experimental.
172 Next section is [wine] and contains essential configuration information.
173 Configuration format is like the one above:
175         "Variable" = "Value"
177 The relevant variables are:
179 windows - your Windows install directory, e.g.
180         "windows" = "C:\\win98"
182 system - your Windows system directory, e.g.
183         "system" = "C:\\win98\\system"
185 path - application search path, should be at the very least:
186         "path" = "C:\\win98\\system;C:\\win98;C:\\win98\\command"
188 temp - a directory for temporary files, most likely this:
189         "temp" = "/tmp"
192 If you want to know more about the configuration of WINE,
193 refer to reference [1].
196 5. Running applications with WINE
197 ---------------------------------
198 WINE is quite easy to use once it is installed the right way:
201 wine ping (using the path-variable)
202 wine ping.exe
203 wine c:\\win98\\ping.exe (assuming "C" is mapped to the windows partition)
204 wine /mnt/win/win98/ping.exe
206 You can pass commandline parameters like this:
208 wine ping.exe -- -t localhost
210 Use CTRL-C to interrupt as usual.
213 6. Troubleshooting
214 ------------------
215 Problem: Freetype-related files fail to compile
216 Solution: Remove _all_ old and conflicting versions of Freetype
217         (both libraries and header files).
218         Please note that XFree86 also brings a version of Freetype with
219         it. You can find its files in /usr/X11R6/lib and /usr/X11R6/include.
221 Any more questions go to leslie.polzer@gmx.net.
224 7. References and pointers
225 --------------------------
226 [1] The WINE homepage: http://www.winehq.org/
227 [2] Which applications work with WINE?
228         The Codeweavers AppDB: http://appdb.winehq.org/appbrowse.php
229 [3] The WINE FAQ: http://www.winehq.org/FAQ/
230 [4] Linux Half-Life: lhl.linuxgames.com
231 [5] Starcraft under WINE:
232         http://www.linuxgames.com/starcraft.php3
233         http://koti.mbnet.fi/~hoppq/sc-howto.html
236 CHANGELOG:
237 [2003-09-14]
238  * Initial release