]> Pileus Git - ~andy/fetchmail/blobdiff - INSTALL
Sunil Shetye's latest cleanup patch.
[~andy/fetchmail] / INSTALL
diff --git a/INSTALL b/INSTALL
index 55737d31f372445cf717c571dda2215a198183b8..c332fc11fe4bb02a4644467ce248453c2459adde 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,6 +1,6 @@
                INSTALL Instructions for fetchmail
 
-If you have installed binaries (e.g. from an RPM) you can skip to step 4.
+If you have installed binaries (e.g. from an RPM) you can skip to step 5.
 
 If you are a Linux system packager, be aware that the build process generates
 an RPM spec file at fetchmail.spec, and you can "make rpm" to generate an
@@ -10,12 +10,43 @@ The Frequently Asked Questions list, included as the file FAQ in this
 distributions, answers the most common questions about configuring and 
 running fetchmail.
 
-1. CONFIGURE
+1. USEFUL THINGS TO INSTALL FIRST
+
+If you want support for RFC1938-compliant one-time passwords, you'll
+need to install Craig Metz's OPIE libraries first and *make sure
+they're on the normal library path* where configure will find them.  Then
+configure with --enable-OPIE, and fetchmail build process will detect
+them and compile appropriately.
+
+Note: there is no point in doing this unless your server is
+OTP-enabled.  To test this, telnet to the server port and give it
+a valid USER id.  If the OK response includes the string "otp-",
+you should install OPIE.  You need version 2.32 or better.
+
+The OPIE library sources are available at http://www.inner.net/pub/opie/
+You can also find OPIE and IPV6-capable servers there.
+
+Building in IPv6 support *requires* glibc 2.1.1 (or newer) or 
+that Craig Metz's inet6-apps kit be installed.
+The IPsec patches *requires* inet6-apps kit.;
+the IPsec patches require that the kit be built with network
+security API support enabled. The kit can be gotten from
+ftp.ipv6.inner.net:/pub/ipv6 (via IPv6) or ftp.inner.net
+/pub/ipv6 (via IPv4).
+
+Fetchmail has had serious grief from buggy versions of the gettext suite.
+If your version is older than 1.10.40, you should use the configure
+option `--with-included-gettext'.
+
+2. CONFIGURE
 
 Installing fetchmail is easy.  From within this directory, type:
 
        ./configure
 
+(If your getext is old, you need to include the --with-included-gettext
+option, which I recommend anyway). 
+
 The autoconfiguration script will spend a bit of time figuring out the
 specifics of your system.  If you want to specify a particular compiler
 (e.g. you have gcc but want to compile with cc), set the environment 
@@ -30,15 +61,23 @@ and there don't seem to be any live servers for it anymore.  You can
 configure it back in if you want with `configure --enable-POP2', but
 leaving it out cuts the executable's size slightly.
 
-Specifying --with-kerberos=DIR will tell the fetchmail build process to
-look in DIR for Kerberos support.  Configure normally looks in /usr/kerberos
-and /usr/athena; if you specify this option with an argument it will look
-in DIR first. 
+Support for CompuServe's RPA authentication method (rather similar to
+APOP) is available but also not included in the standard build.  You
+can compile it in with `configure --enable-RPA'.
 
-Unfortunately, there doesn't seem to be good standardization of where
-Kerberos lives.  If your configuration doesn't match one of the four
-that fetchmail's configure.in knows about, you may find you have to
-hand-hack the Makefile a bit.
+Support for Microsoft's NTLM authentication method is also available
+but also not included in the standard build.  You can compile it in
+with `configure --enable-NTLM'.
+
+Support for authentication using RFC1731 GSSAPI is available
+but also not included by default.  You can compile it in with
+`configure --with-gssapi', which looks for GSSAPI support in standard
+locations (/usr, /usr/local).  If you set --with-GSSAPI=DIR
+you can direct the build to look for GSSAPI support under DIR.
+
+Hooks for the OpenSSL library (see http://www.openssl.org/) are
+included in the distribution.  To enable these, configure with
+--with-ssl; they are not included in the standard build.
 
 If you want to build for debugging, 
 
@@ -46,11 +85,40 @@ If you want to build for debugging,
 
 will do that.
 
+To specify a fallback MUA in case local port 25 doesn't respond, do one of:
+
+       configure --enable-fallback=procmail
+       configure --enable-fallback=sendmail
+
+A disadvantage of using procmail is that local alias expansion
+according to /etc/aliases won't get done if we fall back to it.
+
+Advanced configuration:
+
+Specifying --with-kerberos=DIR or --with-kerberos5=DIR will tell the
+fetchmail build process to look in DIR for Kerberos support.
+Configure normally looks in /usr/kerberos and /usr/athena; if you
+specify this option with an argument it will look in DIR first.
+
+Unfortunately, there doesn't seem to be good standardization of where
+Kerberos lives.  If your configuration doesn't match one of the four
+that fetchmail's configure.in knows about, you may find you have to
+hand-hack the Makefile a bit.
+
+You may also want to hand-hack the Makefile if you're writing a custom
+or bleeding-edge resolver library.  In that case you will probably
+want to add -lresolv or whatever to the definition of LOADLIBS.
+
+It is also possible to explicitly condition out the support for
+POP3, IMAP, and ETRN (with configure arguments of --disable-POP3,
+--disable-IMAP, and --disable-ETRN respectively).  However, none
+of these wins back more that 3 to 4K on an Intel box.
+
 If you're running QNX, edit the distributed Makefile directly.  The
 QNX values for various macros are there but commented out; all you
 have to do is uncomment them.
 
-2. MAKE 
+3. MAKE 
 
 You may find you need flex at version 2.5.3 or greater to build
 fetchmail.  The stock lex distributed with some versions of Linux does
@@ -61,9 +129,11 @@ Run
 
        make
 
-This should compile fetchmail for your system.
+This should compile fetchmail for your system.  If fetchmail fails to build
+properly, see the FAQ section B on build-time problems.  Note: parallelized
+make (e.g. make -j 4) fails due to some weirdness in the yacc productions.
 
-3. INSTALL
+4. INSTALL
 
 Lastly, become root and run
 
@@ -77,30 +147,37 @@ NOTE: If you are using an MTA other than sendmail (such as qmail,
 exim, or smail), see the FAQ (section T) for discussion of any special
 configuration steps that may be necessary.
 
-4. SET UP A RUN CONTROL FILE
+5. SET UP A RUN CONTROL FILE
 
-See the man page and the file sample.rcfile for a description of how to
-configure your individual preferences.
+See the man page for a description of how to configure your individual
+preferences.
 
 If you're upgrading from popclient, see question F4 in the FAQ file.
 
-5. TEST
+6. TEST
 
-I strongly recommend that your first fetchmail run use the -v and -k
+I strongly recommend that your first fetchmail run use the -v, -a and -k
 options, in case there is something not quite right with your server,
 your local delivery configuration or your port 25 listener.  Also,
 beware of aliases that direct your local mail back to the server host!
 
-This software is known to work with the qpop/popper series of
-freeware POP3 servers; also with the IMAP2bis and IMAP4 servers that are
-distributed with Pine from the University of Washington.  This covers
-all the servers normally hosted on Linux and *BSD systems.
+This software is known to work with the qpop/popper series of freeware
+POP3 servers; also with the IMAP2bis and IMAP4 servers that are
+distributed with Pine from the University of Washington; also with the
+Cyrus IMAP server from CMU.  This covers all the servers commonly
+hosted on Linux and *BSD systems.  It also works with the IMAP service
+of Microsoft Exchange, despite the fact that Microsoft Exchange is
+extremely broken (returns incorrect message lengths in LIST
+responses).  
+
+See the FAQ, section S, for detailed advice on running with various
+servers.
 
-6. REPORTING BUGS
+7. REPORTING BUGS
 
 You should read the FAQ file question G3 before reporting a bug.
 
-7. USE IT
+8. USE IT
 
 Once you've verified your configuration, you can start fetchmail to
 run in background and forget about it.  Enjoy!