INSTALL 7.2 KB
Newer Older
1 2
INSTALL Instructions for fetchmail
==================================
Eric S. Raymond's avatar
Eric S. Raymond committed
3

4
Building from Git repository: see README.git
5 6 7

Packagers and port/emerge maintainers: see README.packaging.

8

9
If you have installed binaries (e.g. from a Linux RPM or DPKG, Solaris
10
package or FreeBSD port), you can skip to step 5 below.
11

12
---------------------------------------------------------------------
Eric S. Raymond's avatar
Eric S. Raymond committed
13
The Frequently Asked Questions list, included as the file FAQ in this
14
distribution, answers the most common questions about configuring and
Eric S. Raymond's avatar
Eric S. Raymond committed
15
running fetchmail.
16
---------------------------------------------------------------------
Eric S. Raymond's avatar
Eric S. Raymond committed
17

18

19
1. PREPARATIONS: USEFUL THINGS TO INSTALL FIRST
20

21
1.1 OpenSSL
22 23 24 25 26 27 28 29 30

If you are installing OpenSSL yourself, it is recommended that you build
shared OpenSSL libraries, it works better and updating OpenSSL does not
then require you to reinstall all applications that use OpenSSL.

Try after unpacking OpenSSL:

	./config shared && make && make test && make install

31
1.2 gettext (internationalization)
Matthias Andree's avatar
Matthias Andree committed
32 33 34

Internationalization of fetchmail requires GNU gettext (libintl and
libiconv). Fetchmail, as of version 6.3.0, no longer ships its own
35
libintl copy.  Note that some systems include gettext in their libc.
Matthias Andree's avatar
Matthias Andree committed
36

37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
1.3 OTP/OPIE

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.

Matthias Andree's avatar
Matthias Andree committed
53
1.4 IPv6
54

55 56 57 58 59
Building in IPv6 support *requires* an up-to-date operating system.
Recent Linux versions with glibc 2.1.1 or newer, FreeBSD, Solaris should
be fine.

If you have trouble with intl or gettext functions, try using the
60
configure option '--with-included-gettext'.
Eric S. Raymond's avatar
Eric S. Raymond committed
61

Eric S. Raymond's avatar
Eric S. Raymond committed
62

63
2. CONFIGURE
64

65 66
2.1 Basic options

Eric S. Raymond's avatar
Eric S. Raymond committed
67
Installing fetchmail is easy.  From within this directory, type:
Eric S. Raymond's avatar
Eric S. Raymond committed
68 69 70 71 72

	./configure

The autoconfiguration script will spend a bit of time figuring out the
specifics of your system.  If you want to specify a particular compiler
73 74
(e.g. you have gcc but want to compile with cc), set the environment
variable CC before you run configure.
Eric S. Raymond's avatar
Eric S. Raymond committed
75

76 77
The configure script accepts certain standard configuration options.
These include --prefix, --exec-prefix, --bindir, --infodir, --mandir,
Matthias Andree's avatar
Matthias Andree committed
78
and --srcdir.  Run 'configure --help' for more.
79 80 81

POP2 support is no longer compiled in by default, as POP2 is way obsolete
and there don't seem to be any live servers for it anymore.  You can
82
configure it back in if you want with 'configure --enable-POP2', but
83 84
leaving it out cuts the executable's size slightly.

85 86
Support for CompuServe's RPA authentication method (rather similar to
APOP) is available but also not included in the standard build.  You
87
can compile it in with 'configure --enable-RPA'.
88

89
Support for Microsoft's NTLM authentication method is also available
90
but not included in the standard build either.  You can compile it in
91
with 'configure --enable-NTLM'.
92

Eric S. Raymond's avatar
Eric S. Raymond committed
93
Support for authentication using RFC1731 GSSAPI is available
Eric S. Raymond's avatar
Eric S. Raymond committed
94
but also not included by default.  You can compile it in with
95
'configure --with-gssapi', which looks for GSSAPI support in standard
96
locations (/usr, /usr/local).  If you set --with-GSSAPI=DIR
Eric S. Raymond's avatar
Eric S. Raymond committed
97 98
you can direct the build to look for GSSAPI support under DIR.

99
Hooks for the OpenSSL library (see http://www.openssl.org/) are
Matthias Andree's avatar
Matthias Andree committed
100 101 102 103 104 105 106 107
included in the distribution.  Fetchmail 6.4 enables these by default.
Fetchmail's configure script will query pkg-config (pkgconf) or failing that,
probe some default locations for the include/openssl/ssl.h file. If this
doesn't work (i. e. configure prints "SSL support enabled, but OpenSSL not
found" and aborts), you need to give the explicit prefix of your OpenSSL
installation (specify the directory that contains OpenSSL's "include"
subdirectory), for instance: "--with-ssl=/example/path" would assume that you
have an /example/path/include/openssl/ssl.h header file.
Eric S. Raymond's avatar
Eric S. Raymond committed
108

109 110
2.2 Advanced options

Eric S. Raymond's avatar
Eric S. Raymond committed
111 112 113 114
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.
115 116 117 118 119

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.
120

Eric S. Raymond's avatar
Eric S. Raymond committed
121 122 123 124
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.

125 126
It is also possible to explicitly condition out the support for
POP3, IMAP, and ETRN (with configure arguments of --disable-POP3,
127
--disable-IMAP, and --disable-ETRN respectively).
128

129

130
3. BUILD
Eric S. Raymond's avatar
Eric S. Raymond committed
131 132

Run
Eric S. Raymond's avatar
Eric S. Raymond committed
133 134 135

	make

136
This should compile fetchmail for your system.  If fetchmail fails to build
137 138
properly, see the FAQ section B on build-time problems.

Matthias Andree's avatar
Matthias Andree committed
139 140 141 142 143 144 145
On multi-core computers, run

	make -j8

on a computer that supports 8 CPU threads at the same time (for instance,
Octocore computers or Quad-core computers supporting two threads per core).

146

147
4. INSTALL
148

149
Lastly, become root and run
Eric S. Raymond's avatar
Eric S. Raymond committed
150 151 152

	make install

Eric S. Raymond's avatar
Eric S. Raymond committed
153
This will install fetchmail.  By default, fetchmail will be installed
154 155
in /usr/local/bin, with the man page in /usr/local/man/man1.  You can
use the configure options --bindir and --mandir to change these.
Eric S. Raymond's avatar
Eric S. Raymond committed
156

157 158 159 160
If you are tight on disk space, you can run instead

	make install-strip

161 162 163
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.
Eric S. Raymond's avatar
Eric S. Raymond committed
164

165

166
5. SET UP A RUN CONTROL FILE
167

Eric S. Raymond's avatar
Eric S. Raymond committed
168 169
See the man page for a description of how to configure your individual
preferences.
Eric S. Raymond's avatar
Eric S. Raymond committed
170

171
If you're upgrading from popclient, see question F4 in the FAQ file.
Eric S. Raymond's avatar
Eric S. Raymond committed
172

173

174
6. TEST
175

176
I strongly recommend that your first fetchmail run use the -v, -a and -k
Eric S. Raymond's avatar
Eric S. Raymond committed
177 178 179 180
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!

Eric S. Raymond's avatar
Eric S. Raymond committed
181 182 183
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
184 185 186 187
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
188
responses).
189 190 191

See the FAQ, section S, for detailed advice on running with various
servers.
192

193

194
7. REPORTING BUGS
195

196
You should read the FAQ file question G3 before reporting a bug.
197

198

199
8. USE IT
200

201 202
Once you've verified your configuration, you can start fetchmail to
run in background and forget about it.  Enjoy!
203 204 205


END of text file INSTALL