]> Pileus Git - ~andy/fetchmail/blob - INSTALL
c82ffd4f6b61b251a5dc7cf090b1ed6ff2b3ce10
[~andy/fetchmail] / INSTALL
1                 INSTALL Instructions for fetchmail
2
3 If you have installed binaries (e.g. from an RPM) you can skip to step 5.
4
5 If you are a Linux system packager, be aware that the build process generates
6 an RPM spec file at fetchmail.spec, and you can "make rpm" to generate an
7 RPM and SRPM.
8
9 The Frequently Asked Questions list, included as the file FAQ in this
10 distributions, answers the most common questions about configuring and 
11 running fetchmail.
12
13 1. USEFUL THINGS TO INSTALL FIRST
14
15 If you want support for RFC1938-compliant one-time passwords, you'll
16 need to install Craig Metz's OPIE libraries first and *make sure
17 they're on the normal library path* where configure will find them.  Then
18 configure with --enable-OPIE, and fetchmail build process will detect
19 them and compile appropriately.
20
21 Note: there is no point in doing this unless your server is
22 OTP-enabled.  To test this, telnet to the server port and give it
23 a valid USER id.  If the OK response includes the string "otp-",
24 you should install OPIE.  You need version 2.32 or better.
25
26 The OPIE library sources are available at ftp://ftp.inner.net/pub/opie.
27 You can also find OPIE and IPV6-capable servers there.
28
29 Building in IPv6 support or the IPsec patches REQUIRES that Craig
30 Metz's inet6-apps kit be installed; the IPsec patches require that the
31 kit be built with network security API support enabled. The kit can be
32 gotten from ftp.ipv6.inner.net:/pub/ipv6 (via IPv6) or ftp.inner.net
33 /pub/ipv6 (via IPv4).
34
35 2. CONFIGURE
36
37 Installing fetchmail is easy.  From within this directory, type:
38
39         ./configure
40
41 The autoconfiguration script will spend a bit of time figuring out the
42 specifics of your system.  If you want to specify a particular compiler
43 (e.g. you have gcc but want to compile with cc), set the environment 
44 variable CC before you run configure.  
45
46 The configure script accepts certain standard configuration options.
47 These include --prefix, --exec-prefix, --bindir, --infodir, --mandir,
48 and --srcdir.  Do `configure --help' for more.
49
50 POP2 support is no longer compiled in by default, as POP2 is way obsolete
51 and there don't seem to be any live servers for it anymore.  You can
52 configure it back in if you want with `configure --enable-POP2', but
53 leaving it out cuts the executable's size slightly.
54
55 Support for CompuServe's RPA authentication method (rather similar to
56 APOP) is available but also not included in the standard build.  You
57 can compile it in with `configure --enable-RPA'.
58
59 Support for authentication using RFC1731 GSSAPI is available
60 but also not included by default.  You can compile it in with
61 `configure --with-gssapi', which looks for GSSAPI support in standard
62 locations (/usr, /usr/local).  If you set --with-GSSAPI=DIR
63 you can direct the build to look for GSSAPI support under DIR.
64
65 If you want to build for debugging, 
66
67         CFLAGS=-g LDFLAGS=" " ./configure
68
69 will do that.
70
71 To enable multilingual support using GNU gettext, 
72
73         configure --prefix=/usr --enable-nls
74
75 The prefix argument is needed to generate the makefiles in the po directory
76 correctly; otherwise, they'll install the internationalization stuff in
77 /usr/local where fetchmail can't see it.
78
79 Advanced configuration:
80
81 Specifying --with-kerberos=DIR or --with-kerberos5=DIR will tell the
82 fetchmail build process to look in DIR for Kerberos support.
83 Configure normally looks in /usr/kerberos and /usr/athena; if you
84 specify this option with an argument it will look in DIR first.
85
86 Unfortunately, there doesn't seem to be good standardization of where
87 Kerberos lives.  If your configuration doesn't match one of the four
88 that fetchmail's configure.in knows about, you may find you have to
89 hand-hack the Makefile a bit.
90
91 You may also want to hand-hack the Makefile if you're writing a custom
92 or bleeding-edge resolver library.  In that case you will probably
93 want to add -lresolv or whatever to the definition of LOADLIBS.
94
95 It is also possible to explicitly condition out the support for
96 POP3, IMAP, and ETRN (with configure arguments of --disable-POP3,
97 --disable-IMAP, and --disable-ETRN respectively).  However, none
98 of these wins back more that 3 to 4K on an Intel box.
99
100 If you're running QNX, edit the distributed Makefile directly.  The
101 QNX values for various macros are there but commented out; all you
102 have to do is uncomment them.
103
104 3. MAKE 
105
106 You may find you need flex at version 2.5.3 or greater to build
107 fetchmail.  The stock lex distributed with some versions of Linux does
108 not work -- it yields a parser which core-dumps on syntax errors.  You
109 can get flex at the GNU ftp site, ftp://prep.ai.mit.edu/pub/gnu.
110
111 Run
112
113         make
114
115 This should compile fetchmail for your system.  If fetchmail fails to build
116 properly, see the FAQ section B on build-time problems.
117
118 4. INSTALL
119
120 Lastly, become root and run
121
122         make install
123
124 This will install fetchmail.  By default, fetchmail will be installed
125 in /usr/local/bin, with the man page in /usr/local/man/man1.  You can
126 use the configure options --bindir and --mandir to change these.
127
128 NOTE: If you are using an MTA other than sendmail (such as qmail,
129 exim, or smail), see the FAQ (section T) for discussion of any special
130 configuration steps that may be necessary.
131
132 5. SET UP A RUN CONTROL FILE
133
134 See the man page and the file sample.rcfile for a description of how to
135 configure your individual preferences.
136
137 If you're upgrading from popclient, see question F4 in the FAQ file.
138
139 6. TEST
140
141 I strongly recommend that your first fetchmail run use the -v and -k
142 options, in case there is something not quite right with your server,
143 your local delivery configuration or your port 25 listener.  Also,
144 beware of aliases that direct your local mail back to the server host!
145
146 This software is known to work with the qpop/popper series of freeware
147 POP3 servers; also with the IMAP2bis and IMAP4 servers that are
148 distributed with Pine from the University of Washington; also with the
149 Cyrus IMAP server from CMU.  This covers all the servers normally
150 hosted on Linux and *BSD systems.  It also works with Microsoft Exchange,
151 despite the fact that Microsoft Exchange is extremely broken (returns
152 incorrect message lengths in LIST responses).
153
154 7. REPORTING BUGS
155
156 You should read the FAQ file question G3 before reporting a bug.
157
158 8. USE IT
159
160 Once you've verified your configuration, you can start fetchmail to
161 run in background and forget about it.  Enjoy!