xref: /freebsd/crypto/heimdal/doc/install.texi (revision 6990ffd8a95caaba6858ad44ff1b3157d1efba8f)
1@c $Id: install.texi,v 1.16 2001/01/28 22:11:22 assar Exp $
2
3@node Building and Installing, Setting up a realm, What is Kerberos?, Top
4@comment  node-name,  next,  previous,  up
5@chapter Building and Installing
6
7Heimdal uses GNU Autoconf to configure for specific hosts, and GNU
8Automake to manage makefiles. If this is new to you, the short
9instruction is to run the @code{configure} script in the top level
10directory, and when that finishes @code{make}.
11
12If you want to build the distribution in a different directory from the
13source directory, you will need a make that implements VPATH correctly,
14such as GNU make.
15
16You will need to build the distribution:
17
18@itemize @bullet
19@item
20A compiler that supports a ``loose'' ANSI C mode, such as @code{gcc}.
21@item
22lex or flex
23@item
24awk
25@item
26yacc or bison
27@item
28a socket library
29@item
30NDBM or Berkeley DB for building the server side.
31@end itemize
32
33When everything is built, you can install by doing @kbd{make
34install}. The default location for installation is @file{/usr/heimdal},
35but this can be changed by running @code{configure} with
36@samp{--prefix=/some/other/place}.
37
38If you need to change the default behavior, configure understands the
39following options:
40
41@table @asis
42@item @kbd{--without-berkeley-db}
43DB is preferred before NDBM, but if you for some reason want to use NDBM
44instead, you can use this option.
45
46@item @kbd{--with-krb4=@file{dir}}
47Gives the location of Kerberos 4 libraries and headers. This enables
48Kerberos 4 support in the applications (telnet, rsh, popper, etc) and
49the KDC. It is automatically check for in @file{/usr/athena}. If you
50keep libraries and headers in different places, you can instead give the
51path to each with the @kbd{--with-krb4-lib=@file{dir}}, and
52@kbd{--with-krb4-include=@file{dir}} options.
53
54You will need a fairly recent version of our Kerberos 4 distribution for
55@code{rshd} and @code{popper} to support version 4 clients.
56
57@item @kbd{--enable-kaserver}
58Enables experimental kaserver support in the KDC. This is the protocol
59used by the ``KDC'' in AFS. Requires Kerberos 4 support.
60
61@item @kbd{--enable-kaserver-db}
62Enables experimental support for reading kaserver databases in hprop.
63This is useful when migrating from a kaserver to a Heimdal KDC.
64
65@item @kbd{--enable-dce}
66Enables support for getting DCE credentials and tokens.  See the README
67files in @file{appl/dceutils} for more information.
68
69@item @kbd{--disable-otp}
70By default some of the application programs will build with support for
71one-time passwords (OTP).  Use this option to disable that support.
72
73@item @kbd{--enable-osfc2}
74Enable some C2 support for OSF/Digital Unix/Tru64.  Use this option if
75you are running your OSF operating system in C2 mode.
76
77@item @kbd{--with-readline=@file{dir}}
78Gives the path for the GNU Readline library, which will be used in some
79programs. If no readline library is found, the (simpler) editline
80library will be used instead.
81
82@item @kbd{--with-hesiod=@file{dir}}
83Enables hesiod support in push.
84
85@item @kbd{--enable-netinfo}
86Add support for using netinfo to lookup configuration information.
87Probably only useful (and working) on NextStep/Mac OS X.
88
89@item @kbd{--without-ipv6}
90Disable the IPv6 support.
91
92@item @kbd{--with-openldap}
93Compile Heimdal with support for storing the database in LDAP.  Requires
94OpenLDAP @url{http://www.openldap.org}.  See
95@url{http://www.padl.com/~lukeh/heimdal/} for more information.
96
97@item @kbd{--enable-bigendian}
98@item @kbd{--enable-littleendian}
99Normally, the build process will figure out by itself if the machine is
100big or little endian.  It might fail in some cases when
101cross-compiling.  If it does fail to figure it out, use the relevant of
102these two options.
103
104@item @kbd{--with-mips-abi=@var{abi}}
105On Irix there are three different ABIs that can be used (@samp{32},
106@samp{n32}, or @samp{64}).  This option allows you to override the
107automatic selection.
108
109@end table
110