Latest adds before release of 0.20.3
[wmaker-crm.git] / INSTALL
blob12ccc8598880c70cc0c0d0312587a3b4e7e2461e
2                 Installation Instructions for Window Maker
6 SUPPORTED PLATFORMS
7 ===================
8 (ie: I've heard someone has compiled it on...)
10 - Intel/Linux RedHat 4.2 (primary platform)
11 - Intel/Linux other distributions
12 - Sparc/Linux RedHat 5.1
13 - PowerPC/MkLinux
14 - Alpha/Linux RedHat 5.1
15 - FreeBSD
16 - Solaris 2.5.1, 2.5.2
17 - Solaris 2.6.0
18 - Solaris 2.7beta
19 - SCO Unix
20 - SGI Irix
21 - OSF/1
22 - HP-UX
23 - AIX 4.1.4 / IBM PowerPC
24 - AIX 5.3
25 - DEC Alpha/Digital UNIX 4.x
26 - XFree86 / OS/2
27 - Corel NetWinder
28 - SunOS 4.x
29 - MacOS / MachTen 4.1.1
31 Patches to make it work on other platforms are welcome.
34 REQUIREMENTS:
35 =============
37 The following software is required to use Window Maker:
39 - X11R6.x       
40         Window Maker can be compiled in older versions of X, like X11R5
41         (Solaris) or X11R4 (OpenWindows) but it will not work 100% correctly.
42         In such servers there will not be application icons and you'll have
43         trouble using the dock. Upgrading the client libraries (Xlib, Xt etc)
44         will help if you can't upgrade the server.
46 The following is required to build Window Maker:
48 - Basic obvious stuff
49         If you will build Window Maker, make sure you have gcc (or some
50         other ANSI C compiler) and the X header files installed. Specially
51         for newbie Linux users: you must install all X development packages
52         and the gcc suite. Otherwise you won't be able to build any X
53         program, including Window Maker.
55 - autoconf and automake
56         autoconf and automake are not required, but if you have them
57         installed, make sure you have autoconf 2.12 and automake 1.3 or
58         newer. If you have an older version, disable them by temporarily
59         renaming them to something else or uninstalling them from your
60         system.
61         
62 - lex (or flex) and yacc (or bison)
63         These are used by libPropList. lex is actually not needed since
64         it's output file is included, but either me or automake is stupid,
65         causing the configure script for libPropList to simply abort for no
66         convincent reason if lex is not found.
69 OPTIONAL:
70 =========
72 These libraries are not required to make Window Maker work, but they
73 are supported in case you want to use them. Version numbers are those
74 that I have (and therefore, guraranteed to work), but other versions
75 might work too. Tell me if you made wmaker work with some library
76 with a version older than the stated here.
79 - libXPM 4.7 or newer
80         Older versions may not work!!! 
81         Available at ftp://sunsite.unc.edu/pub/Linux/libs/X/
83         There is builtin support for XPM files, but it will not
84         load images in some uncommon encodings.
86 - libpng 0.96 or newer and zlib     
87         For PNG image support.
89 - libtiff 3.4 or newer
90         For TIFF image support.
91         You can get it at ftp://ftp.sgi.com/graphics/tiff
93 - libjpeg 6.0.1 or newer
94         For JPEG image support
96 - libgif 2.2 or libungif
97         For GIF image support   
99 - GNU xgettext
100         If you want to use translated messages, you will need GNU gettext.
101         Other versions of gettext are not compatible and will not work.
102         Get the GNU version from ftp://prep.ai.mit.edu
104 Most of these can be get from ftp.uu.net/pub/graphics
107 CONFIGURE OPTIONS:
108 ==================
110 These options can be passed to the configure script to enable/disable
111 some Window Maker features. Example:
113 ./configure --enable-kanji
115 will configure Window Maker with kanji (and other multi-byte) characters
116 support compiled in.
119 To get a list of other options, run ./configure --help
121 --enable-sound  enable support of sound effects module
123 --disable-xpm   disables use of the XPM library even if it is available on
124         your system. 
126 --disable-png   disables use of PNG library
128 --disable-tiff  disable use of TIFF library
130 --disable-gif   disable use of GIF library
132 --disable-jpeg  disable use of JPEG library
134 --disable-shape  disables shaped windows (for oclock, xeyes etc.)
136 --enable-debug  adds extra debugging information. Do not use it
137         unless you're debugging Window Maker.
138         
139 --enable-kanji  support to display Kanji characters, Korean, Chinese 
140                 and other languagues that require special characters.
142 --enable-single-icon  enables the collapsing of all appicons of the
143          WM_CLASS+WM_INSTANCE into a single one. This feature is not 
144         supported at all by the developers. If you have some trouble with it,
145         contact it's author: Christopher Seawood <cls@seawood.org>
147 --disable-shm   disable use of the MIT shared memory extension. This will
148         slow down texture generation.
149         
150 --enable-modelock  XKB language status lock support. If you don't know 
151         what it is you probably don't need it.
154 PLATFORM SPECIFIC NOTES:
155 ========================
156 - SCO Unix - run configure like
157         CFLAGS="-belf -DANSICPP" ./configure 
159 - SunOS, Solaris 
160         If you have gcc installed, run configure as:
161         CPP_PATH="gcc -E -x c" ./configure
162         Sun's cpp lacks some features needed by Window Maker and it can
163         cause problems when parsing the config files.
164         You also might need to use the --with-gfx-libs and --with-gfx-incs
165         to supply the directory where libtiff is located.
167 - RedHat Linux
168         Make sure you don't have the LANG and LINGUAS environment variables
169         set to en_RN. Also, make sure you have /usr/local/bin in your
170         PATH environment variable, as for some mysterious reason the folks
171         at RedHat did not include it in the default configuration files
172         in RH 5.{0,1}.
174 - PowerPC MkLinux
175         You will need to have the latest version of Xpmac. Older versions
176         seem to have bugs that cause the system to hang.
178 - Debian Linux
179         If you want JPEG and TIFF support, make sure you have libtiff-dev 
180         and libjpeg-dev installed.
182 - SuSE Linux
183         If you installed the Window Maker package from SuSE,
184         uninstall it before trying to compile wmaker or you
185         might have problems.
187 - MetroX (unknown version)
188         MetroX has a bug that corrupts pixmaps that are set as window
189         backgrounds. If you use MetroX and has weird problems with
190         textures, do not use textures in titlebars. Or use a different
191         X server.
194 INSTALLATION:
195 =============
197 Unpack WindowMaker-data.tar.gz and move the pixmaps directory in it
198 to /usr/local/share/pixmaps
200 You can get the file at ftp://ftp.windowmaker.org. This file is optional
201 and only have a few icons.
204 Build Window Maker
205 ------------------
206         For a quick start, type the following in your shell prompt:
208         ./configure
209         make
211 then, login as root and type:
213         make install
215 or if you want to strip the debugging symbols from the binaries and make them
216 smaller, you can instead type:
218         make install-strip
220 This will build and install Window Maker with default parameters.
222 If you want to customize some compile-time options, you can do the
223 following. 
225         1. (optional) Look at the CONFIGURE OPTIONS section above for the 
226         options available. Also run:
228         ./configure --help
230         to get a complete listing of other options that are available.
232         2. Run configure with the options you want. For example, if you
233         want to use the --enable-kanji option, type:
235         ./configure --enable-kanji
237         3. (optional) Edit src/wconfig.h with your favorite text editor 
238         and browse through it for some options you might want to change.
240         4. Compile. Just type:
242         make
244         5. Login as root (if you can't do that, read the "I don't have the 
245         root password :-(" section) and install Window Maker in your system:
246                 su root
247                 make install
250 User specific configuration
251 ---------------------------
253 These instructions do not need to be followed when upgrading Window Maker
254 from an older version, unless stated differently in the NEWS file.
256 Every user on your system that wishes to run Window Maker must do the
257 following:
259         1. Install Window Maker configuration files in your home directory.
260 Type:
261         wmaker.inst
263         wmaker.inst will install Window Maker configuration files and will
264 setup X to automatically launch Window Maker at startup.
266         That's it! 
267         
268         You can type "man wmaker" to get some general help for configuration
269 and other stuff.
271 Read the User Guide for a more in-depth explanation of Window Maker.
273 You might want to take a look at the FAQ too.
276 I don't have the root password :(
277 ---------------------------------
279 If you can't get superuser privileges (can't be root) you can install
280 wmaker in your own home directory. For that, supply the --prefix option
281 when running configure in step 2 of building Window Maker. You will
282 also need to supply the --with-appspath option, to specify the path for
283 WPrefs.app Example:
285 ./configure --prefix=/home/jshmoe --with-appspath=/home/jshmoe/GNUstep/Apps
288 Then make /home/jshmoe/bin be included in your search path and run 
289 bin/wmaker.inst
292 UPGRADING
293 =========
295 If you are upgrading from an older version of Window Maker:
297         1. Configure and build Window Maker as always
298         2. Install Window Maker (but do not run wmaker.inst)
299         3. Read the NEWS file and update your configuration files, 
300            if necessary.
302 TROUBLESHOOTING
303 ===============
305 When you have some trouble during configuration (while running configure),
306 like not being able to use a graphic format library you think you have
307 installed, look at the config.log file for clues of the problem.
310 == Error during build of libPropList
312 make: *** No rule to make target `libPropList.a.c', needed by 
313 `libPropList.a.o'.  Stop.
315 Make sure the autoconf and automake versions you have installed are at
316 least:
317 autoconf 2.12
318 automake 1.3
320 If you are using the RPM's that come with RedHat 4.x, don't use them.
321 It is broken. Uninstall the RPM and reinstall a fresh package from
322 ftp://prep.ai.mit.edu or any mirror.
324 == configure doesn't detect libtiff, or other graphic libraries.
326 Delete config.cache, then rerun configure adding the following options to
327 configure (among the other options you use):
328 --with-gfx-libs="-L/usr/local/lib"
329 --with-gfx-incs="-I/usr/local/include -I/usr/local/include/tiff"
330 Put the paths where your graphic libs and their corresponding header files are
331 located. You can put multiple paths in any of these options, as the example
332 of --with-gfx-incs shows. Just put a space between them.
335 == configure doesn't detect libXpm. 
337 * Check if you have a symbolic link from libXpm.so.4.9 to libXpm.so
340 == Segmentation fault on startup
342 * Check if the version of libXPM you have is at least 4.7
344 * Check if you have an updated version of ~/GNUstep/Defaults/WindowMaker
346 If you're not sure, try renaming ~/GNUstep to ~/GNUtmp and then run wmaker.inst
348 == "...: your machine is misconfigured. gethostname() returned (none)"
350 * the hostname of your machine is set to something invalid, that starts
351         with a parenthesis. Do a man hostname for info about how to set it.
354 == The root menu contains only 2 entries. ("XTerm" and "Exit...")
356 * Window Maker is not finding cpp (the C preprocessor). If your cpp is
357 not located in /lib/cpp, edit src/config.h and correct the path in
358 CPP_PATH.
360 == checking lex output file root... configure: error: cannot find output from true; giving up
362 * Read the REQUIREMENTS section of this file.
365 LOCALES/INTERNATIONALIZATION
366 ============================
368 Window Maker has national language support. 
369 To enable national language support, you must compile
370 Window Maker with some additional parameters. 
372 0 - You must have the GNU gettext package installed. It can be
373 obtained at ftp://prep.ai.mit.edu/pub/gnu/gettext-nnn.tar.gz
375 Steps 1 to 3 can be skipped if you use the Install script.
377 1 - You have to select the languages you want to support. Set the
378 LINGUAS to the list of locales you want. English is always
379 suported. Example:
381 setenv LINGUAS "pt ja de"
382 in csh
386 export LINGUAS;LINGUAS="pt ja de"
387 in sh
389 The list of supported locales can be found in po/README.
390 English is the default language.
392 Read po/README if you wish to translate and maintain locale files 
393 for other languages.
395 2 - Additionally, if your language uses multi-byte characters, such
396 as Japanese or Korean, you must supply the --enable-kanji flag to configure.
398 3 - Configure, build and install Window Maker normally.
400 4 - To select a particular locale at runtime you must set the LANG
401 environment variable to the locale you want. For example, if you want to set
402 the portuguese locale, you must run
404 setenv LANG pt
406 in csh or
408 export LANG; LANG=pt
410 in Bourne sh and similars
412 Note: If you have the LC_CTYPE environment variable set, you must
413 unset it before running wmaker.
415 For menu definition files, Window Maker searches for them in the
416 following order (for brazilian portuguese, in this case):
418 menu.pt_BR
419 menu.pt
420 menu
423 5 - If you chose a language that uses multi-byte characters, you must
424 configure the fonts appropriately. Read the manual page for XCreateFontSet
425 to have more details about it. You must change the ~/G/D/WindowMaker file
426 for fonts used in titlebars, menus and other things. For fonts used in
427 dialog windows, change ~/G/D/WMGLOBAL. Note that at the moment you can only
428 supply a single font in WMGLOBAL. The %d in the font names must not be
429 removed.
431 For example, you can specify the following in ~/G/D/WindowMaker:
433 WindowTitleFont = "-*-helvetica-bold-r-normal-*-12-*,-*-*-medium-r-normal-*-14-*";
434 MenuTitleFont = "-*-helvetica-bold-r-normal-*-12-*,-*-*-medium-r-normal-*-14-*";
435 MenuTextFont = "-*-helvetica-medium-r-normal-*-12-*,-*-*-medium-r-normal-*-14-*";
436 IconTitleFont = "-*-helvetica-medium-r-normal-*-8-*,-*-*-medium-r-normal-*-12-*";
437 ClipTitleFont = "-*-helvetica-bold-r-normal-*-10-*,-*-*-medium-r-normal-*-12-*";
438 DisplayFont = "-*-helvetica-medium-r-normal-*-12-*,-*-*-medium-r-normal-*-12-*";
440 and in ~/G/D/WMGLOBAL:
442 SystemFont = "-*-*-medium-r-normal-*-%d-*-*-*-*-*-*-*";
443 BoldSystemFont = "-*-*-medium-r-normal-*-%d-*-*-*-*-*-*-*";
445 The above 2 fonts are only used by applications that use WINGs (WindowMaker
446 and WPrefs.app)