4 Mutt has been reported to compile and run under the following Unix operating
10 Data General Unix (DG/UX)
28 - An ANSI C compiler (such as gcc) is required.
30 - You must also have a SysV compatible curses library, or you must
33 GNU ncurses, ftp://prep.ai.mit.edu/pub/gnu/
37 S-Lang, ftp://space.mit.edu/pub/davis/slang/
39 - Mutt needs an implementation of the iconv API for character set
40 conversions. A free one can be found under the following URL:
42 http://www.gnu.org/software/libiconv/
49 Installing Mutt is rather painless through the use of the GNU
50 autoconf package. Simply untar the Mutt distribution, and run the
51 ``configure'' script. If you have obtained the distribution from
52 the CVS repository, run the ``prepare'' script with the same command
53 line parameters you would pass to configure. It will set up mutt's
54 build environment and add the files which are present in the tar
55 balls, but not in the CVS repository.
57 In most cases, configure will automatically determine everything it
58 needs to know in order to compile. However, there are a few options
59 to ``configure'' to help it out, or change the default behavior:
62 install Mutt in DIR instead of /usr/local
65 use the curses lib in DIR/lib. If you have ncurses, ``configure''
66 will automatically look in /usr/include/ncurses for the include
70 use the S-Lang library instead of ncurses. This library seems to
71 work better for some people because it is less picky about proper
72 termcap entries than ncurses. It is recommended that you use at
73 *least* version 0.99-38 with Mutt.
76 specify where the spool mailboxes are located on your system
78 --with-homespool[=FILE]
79 treat file in the user's home directory as the spool mailbox. Note
80 that this is *not* the full pathname, but relative to the user's
81 home directory. Defaults to "mailbox" if FILE is not specified.
90 Enable GSSAPI authentication to IMAP servers. This should work with
91 both MIT and Heimdal GSSAPI implementations - others haven't been
92 tested. Note that the Cyrus SASL library also supports GSSAPI,
93 and may be able to encrypt your session with it - you should use
94 SASL instead if you can.
97 enable SSL support with IMAP and POP. SSL support requires you to
98 have OpenSSL headers and libraries properly installed before
99 compiling. If the OpenSSL headers and libraries are not in the
100 default system pats you can use the optional PFX argument to
101 define the root directory of your installation. The libraries
102 are then expected to be found in PFX/lib and headers in
106 Use the Cyrus SASL library for IMAP or POP authentication. This
107 library provides generic support for several authentication methods,
108 and more may be added by the system administrator without recompiling
109 mutt. SASL may also be able to encrypt your mail session even if
110 SSL is not available.
113 This switch disables mutt's native language support.
115 --with-included-gettext
116 Mutt will be built using the GNU gettext library included in
117 the intl/ sub-directory. You may need to use this switch if
118 your machine has something which looks like gettext to the
119 configure script, but isn't able to cope with mutt's catalog
123 use GNU regex instead of local regexp routines. Many systems
124 don't have the POSIX compliant regcomp/regexec/regfree
125 routines, so this provides a way to support them.
128 use flock() to lock files.
131 by default, Mutt uses fcntl() to lock files. Over NFS this can
132 result in poor performance on read/write. Note that using this
133 option could be dangerous if dotlocking is also disabled.
136 some implementations of NFS do not always write the
137 atime/mtime of small files. This means that Mutt's ``mailboxes''
138 feature does not always work properly, as it uses these
139 attributes to work out whether the file has new mail. This
140 option enables a workaround to this bug.
143 on some systems, the result of isprint() can't be used reliably
144 to decide which characters are printable, even if you set the
145 LANG environment variable. If you set this option, Mutt will
146 assume all characters in the ISO-8859-* range are printable. If
147 you leave it unset, Mutt will attempt to use isprint() if either
148 of the environment variables LANG, LC_ALL or LC_CTYPE is set,
149 and will revert to the ISO-8859-* range if they aren't.
150 If you need --enable-locales-fix then you will probably need
151 --without-wc-funcs too. However, on a correctly configured
152 modern system you shouldn't need either (try setting LANG,
153 LC_ALL or LC_CTYPE instead).
156 by default Mutt uses the functions mbrtowc(), wctomb() and
157 wcwidth() provided by the system, when they are available.
158 With this option Mutt will use its own version of those
159 functions, which should work with 8-bit display charsets, UTF-8,
160 euc-jp or shift_jis, even if the system doesn't normally support
161 those multibyte charsets.
163 If you find Mutt is displaying non-ascii characters as octal
164 escape sequences (e.g. \243), even though you have set LANG and
165 LC_CTYPE correctly, then you might find you can solve the problem
166 with either or both of --enable-locales-fix and --without-wc-funcs.
168 --with-exec-shell=SHELL
169 on some versions of unix, /bin/sh has a bug that makes using emacs
170 with mutt very difficult. If you have the problem that whenever
171 you press control-G in emacs, mutt and emacs become very confused,
172 you may want to try using a Bourne-derived shell other than
173 /bin/sh here. Some shells that may work are bash, zsh, and ksh.
174 C shells such as csh and tcsh will amost certainly not work right.
175 Note that this option is unrelated to what shell mutt gives you
176 when you press '!'. Only use this option to solve the above problem,
177 and only specify one of the above shells as its argument.
179 (If you encounter this problem with your platform's native
180 Bourne shell, please send a short report to mutt-dev@mutt.org,
181 so a short note on this topic can be added to the Platform notes
184 --enable-exact-address
185 By default, Mutt will rewrite all addresses in the form
186 Personal Name <user@host.domain>
187 regardless of the input. By enabling this option, Mutt will write
188 addresses in the same form they are parsed. NOTE: this requires
189 significantly more memory.
191 WARNING: DO NOT USE THIS OPTION, IT IS BROKEN.
194 Once ``configure'' has completed, simply type ``make install.''
196 Mutt should compile cleanly (without errors) and you should end up with a
197 binary called ``mutt.'' If you get errors about undefined symbols like
198 A_NORMAL or KEY_MIN, then you probably don't have a SysV compliant curses
199 library. You should install either ncurses or S-Lang (see above), and then
200 run the ``configure'' script again.
202 Please note that "VPATH" builds currently do _not_ work.
206 Character set support
207 =====================
209 Mutt no longer contains functions for doing character set conversion.
210 Instead, it expects the iconv functions (iconv_open, iconv,
211 iconv_close) to be provided. Most up-to-date systems provide these
212 functions, often as part of the C library. If you are installing Mutt
213 on a system which does not have them, it is recommended that you
214 install Bruno Haible's portable libiconv library, which you can obtain
217 ftp://ftp.ilog.fr/pub/Users/haible/gnu/
219 Even if your system does provide the iconv functions, you might want
220 to install libiconv, as some systems provide only a very limited
224 If you decide to use your system's iconv implementation, you may
225 need to tell mutt about implementation-defined names for some
226 character sets. Sample configuration files for various systems can
227 be found in the directory contrib/iconv/ in this source
228 distribution, and will be installed in the samples/iconv directory
229 as part of mutt's documentation.
231 In order to use these sample configuration files, just put a line
234 source /usr/local/doc/mutt/samples/iconv/iconv.osf1-4.0d.rc
236 into your system's global Muttrc, which normally resides in /etc or
240 If you really want to, you can configure Mutt --disable-iconv, but
241 there will then be no character set conversion.
249 There is a bug in most (if not all) S-Lang versions which
250 prevents the Meta key from working with mutt. A patch can
251 be found in the file contrib/patch.slang-1.2.2.keypad.1 in
252 this mutt distribution.
257 The system regcomp() and regexec() routines are very badly
258 broken. This should be automatically detected by the
259 configure script. If not, use the --with-regex switch when
262 We are also hearing reports that Solaris 2.4's NLS libraries
263 dump core with mutt when using a locale different from "C".
264 Use the --with-included-gettext configuration switch if you
265 experience this problem.
267 Color does not work right with Solaris curses. You will
268 have to compile with either ncurses or slang to get working
273 There are reports that mutt behaves strangely when linked with
274 the system regexp library. Please use the --with-regex switch
275 when configuring on this platform.
277 For the real fix, applying Sun patches # 105490-05 (linker
278 patch) and # 105210-17 (libc and malloc patch) from
279 sunsolve.sun.com has been reported to stop these problems
284 On recent Linux systems, flock() and fcntl() locks don't mix. If
285 you use the --enable-flock switch on such systems, be sure to
286 give the --disable-fcntl argument as well.
290 Redhat 4.2 Sparc users reported problems with some system
291 include files when building mutt. Configuring mutt with the
292 --disable-warnings switch is said to help against this problem.
297 The system curses library is said to be badly broken. Use GNU
298 ncurses or SLang instead.
300 $Id: INSTALL,v 3.1 2002/11/25 14:16:46 roessler Exp $