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
7 Heimdal uses GNU Autoconf to configure for specific hosts, and GNU
8 Automake to manage makefiles. If this is new to you, the short
9 instruction is to run the @code{configure} script in the top level
10 directory, and when that finishes @code{make}.
12 If you want to build the distribution in a different directory from the
13 source directory, you will need a make that implements VPATH correctly,
16 You will need to build the distribution:
20 A compiler that supports a ``loose'' ANSI C mode, such as @code{gcc}.
30 NDBM or Berkeley DB for building the server side.
33 When everything is built, you can install by doing @kbd{make
34 install}. The default location for installation is @file{/usr/heimdal},
35 but this can be changed by running @code{configure} with
36 @samp{--prefix=/some/other/place}.
38 If you need to change the default behaviour, configure understands the
42 @item @kbd{--without-berkeley-db}
43 DB is preferred before NDBM, but if you for some reason want to use NDBM
44 instead, you can use this option.
46 @item @kbd{--with-krb4=@file{dir}}
47 Gives the location of Kerberos 4 libraries and headers. This enables
48 Kerberos 4 support in the applications (telnet, rsh, popper, etc) and
49 the KDC. It is automatically found if present under
50 @file{/usr/athena}. If you keep libraries and headers in different
51 places, you can instead give the path to each with the
52 @kbd{--with-krb4-lib=@file{dir}}, and
53 @kbd{--with-krb4-include=@file{dir}} options.
55 You will need a fairly recent version of our Kerberos 4 distribution for
56 @code{rshd} and @code{popper} to support version 4 clients.
58 @item @kbd{--enable-dce}
59 Enables support for getting DCE credentials and tokens. See the README
60 files in @file{appl/dceutils} for more information.
62 @item @kbd{--disable-otp}
63 By default some of the application programs will build with support for
64 one-time passwords (OTP). Use this option to disable that support.
66 @item @kbd{--enable-osfc2}
67 Enable some C2 support for OSF/Digital Unix/Tru64. Use this option if
68 you are running your OSF operating system in C2 mode.
70 @item @kbd{--with-readline=@file{dir}}
71 Gives the path for the GNU Readline library, which will be used in some
72 programs. If no readline library is found, the (simpler) editline
73 library will be used instead.
75 @item @kbd{--with-hesiod=@file{dir}}
76 Enables hesiod support in push.
78 @item @kbd{--enable-netinfo}
79 Add support for using netinfo to lookup configuration information.
80 Probably only useful (and working) on NextStep/Mac OS X.
82 @item @kbd{--without-ipv6}
83 Disable the IPv6 support.
85 @item @kbd{--with-openldap}
86 Compile Heimdal with support for storing the database in LDAP. Requires
87 OpenLDAP @url{http://www.openldap.org}. See
88 @url{http://www.padl.com/Research/Heimdal.html} for more information.
90 @item @kbd{--enable-bigendian}
91 @item @kbd{--enable-littleendian}
92 Normally, the build process will figure out by itself if the machine is
93 big or little endian. It might fail in some cases when
94 cross-compiling. If it does fail to figure it out, use the relevant of
97 @item @kbd{--with-mips-abi=@var{abi}}
98 On Irix there are three different ABIs that can be used (@samp{32},
99 @samp{n32}, or @samp{64}). This option allows you to override the
102 @item @kbd{--disable-mmap}
103 Do not use the mmap system call. Normally, configure detects if there
104 is a working mmap and it is only used if there is one. Only try this
105 option if it fails to work anyhow.