1@c $Id: install.texi 16768 2006-02-27 12:26:49Z joda $ 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 behaviour, 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 found if present under 50@file{/usr/athena}. If you keep libraries and headers in different 51places, 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. 54 55You will need a fairly recent version of our Kerberos 4 distribution for 56@code{rshd} and @code{popper} to support version 4 clients. 57 58@item @kbd{--enable-dce} 59Enables support for getting DCE credentials and tokens. See the README 60files in @file{appl/dceutils} for more information. 61 62@item @kbd{--disable-otp} 63By default some of the application programs will build with support for 64one-time passwords (OTP). Use this option to disable that support. 65 66@item @kbd{--enable-osfc2} 67Enable some C2 support for OSF/Digital Unix/Tru64. Use this option if 68you are running your OSF operating system in C2 mode. 69 70@item @kbd{--with-readline=@file{dir}} 71Gives the path for the GNU Readline library, which will be used in some 72programs. If no readline library is found, the (simpler) editline 73library will be used instead. 74 75@item @kbd{--with-hesiod=@file{dir}} 76Enables hesiod support in push. 77 78@item @kbd{--enable-netinfo} 79Add support for using netinfo to lookup configuration information. 80Probably only useful (and working) on NextStep/Mac OS X. 81 82@item @kbd{--without-ipv6} 83Disable the IPv6 support. 84 85@item @kbd{--with-openldap} 86Compile Heimdal with support for storing the database in LDAP. Requires 87OpenLDAP @url{http://www.openldap.org}. See 88@url{http://www.padl.com/Research/Heimdal.html} for more information. 89 90@item @kbd{--enable-bigendian} 91@item @kbd{--enable-littleendian} 92Normally, the build process will figure out by itself if the machine is 93big or little endian. It might fail in some cases when 94cross-compiling. If it does fail to figure it out, use the relevant of 95these two options. 96 97@item @kbd{--with-mips-abi=@var{abi}} 98On 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 100automatic selection. 101 102@item @kbd{--disable-mmap} 103Do not use the mmap system call. Normally, configure detects if there 104is a working mmap and it is only used if there is one. Only try this 105option if it fails to work anyhow. 106 107@end table 108