Building Heimdal

Building and Installing

Heimdal uses GNU Autoconf to configure for specific hosts, and GNU
Automake to manage makefiles. If this is new to you, the short
instruction is to run the configure script in the top level
directory, and when that finishes make.

$ ./configure
$ make

If you want to build the distribution in a different
directory from the source directory, you will need a make
that implements VPATH correctly, such as GNU make.

You will need to build the distribution:

A compiler that supports a ``loose'' ANSI C mode, such as
gcc or clang

lex or flex

awk

yacc or bison

a socket library

Berkeley DB or any of the BDB replacements for building the server side. NDBM on solaris doesn't support large data, so there is no write support for NDBM any longer.

When everything is built, you can install by doing

$ make install

The default location for installation is usr/heimdal,
but this can be changed by running configure with --prefix argument.

$ ./configure --prefix=/some/other/place

If you need to change the default behaviour, configure understands the
following options:

--without-berkeley-db

DB is preferred before NDBM, but if you for some reason
want to use NDBM instead, you can use this option.

--disable-otp

By default some of the application programs will build
with support for one-time passwords (OTP). Use this
option to disable that support.

--with-readline=dir

Gives the path for the GNU Readline library, which will
be used in some programs. If no readline library is
found, the (simpler) editline library will be used
instead.

--with-hesiod=dir

Enables hesiod support in push.

--without-ipv6

Disable the IPv6 support.

--with-openldap

Compile Heimdal with support for storing the database in
LDAP. Requires OpenLDAP.

--enable-bigendian
or
--enable-littleendian

Normally, the build process will figure out by itself if
the machine is big or little endian. It might fail in
some cases when cross-compiling. If it does fail to
figure it out, use the relevant of these two options.

--disable-mmap

Do not use the mmap system call. Normally, configure
detects if there is a working mmap and it is only used
if there is one. Only try this option if it fails to
work anyhow.

Cross compiling Heimdal NetBSD/evbarm on NetBSD/i386

This description
uses NetBSD as a guide to
cross compile Heimdal. We use NetBSD to show how do do it
because NetBSD is very friendly to cross compilers.

We assume you are running as root on a i386 installation for
simplicity.