1999-09-30 12:57:45 -04:00
|
|
|
# $OpenLDAP$
|
2000-07-22 14:59:40 -04:00
|
|
|
# Copyright 1999-2000, The OpenLDAP Foundation, All Rights Reserved.
|
1999-04-23 19:41:45 -04:00
|
|
|
# COPYING RESTRICTIONS APPLY, see COPYRIGHT.
|
2000-08-09 01:20:00 -04:00
|
|
|
H1: Building and Installing OpenLDAP Software
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
This chapter details how to build and install the {{ORG:OpenLDAP}}
|
|
|
|
|
Software package including {{slapd}}(8), the stand-alone LDAP
|
|
|
|
|
daemon and {{slurpd}}(8), the stand-alone update replication daemon.
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
Building and installing OpenLDAP requires several steps: installing
|
|
|
|
|
prerequisite software, configuring OpenLDAP itself, making, and finally
|
|
|
|
|
installing. The following sections describe this process in detail.
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
In case you haven't already obtained OpenLDAP it is available at the following
|
|
|
|
|
location: {{URL: ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release.tgz}}
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
The {{ORG[expand]OLP}} also maintains an extensive site
|
|
|
|
|
({{URL:http://www.OpenLDAP.org/}}) on the World Wide Web. The site
|
|
|
|
|
makes available a number of resources which you may utilize to
|
|
|
|
|
properly install OpenLDAP Software. This includes:
|
|
|
|
|
|
|
|
|
|
!block table; align=center
|
|
|
|
|
Resource URL
|
|
|
|
|
Documentation Catalog {{URL:http://www.OpenLDAP.org/doc/}}
|
|
|
|
|
Frequently Asked Questions {{URL:http://www.OpenLDAP.org/faq/}}
|
|
|
|
|
Issue Tracking System {{URL:http://www.OpenLDAP.org/its/}}
|
|
|
|
|
Mailing Lists {{URL:http://www.OpenLDAP.org/lists/}}
|
|
|
|
|
Software Pages {{URL:http://www.OpenLDAP.org/software/}}
|
|
|
|
|
Support Page {{URL:http://www.OpenLDAP.org/support/}}
|
|
|
|
|
!endblock
|
|
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
H2: Prerequisite software
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 01:20:00 -04:00
|
|
|
OpenLDAP relies a number of software packages distributed by third
|
|
|
|
|
parties. Depending on the features you intend to use, you may have
|
|
|
|
|
to download and install a number of additional software packages.
|
|
|
|
|
This section details commonly needed third party software packages
|
|
|
|
|
you might have to install. Note that some of these third party
|
|
|
|
|
packages may depend on additional software packages. Install each
|
|
|
|
|
package per installation instructions provided with it.
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 01:20:00 -04:00
|
|
|
H3: TLS Software
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
OpenLDAP clients and servers require installation of {{PRD:OpenSSL}}
|
|
|
|
|
{{TERM:TLS}} libraries to provide {{TERM[expand]TLS}} services. Though
|
2000-08-09 01:20:00 -04:00
|
|
|
some operating systems may provide these libraries as part of the
|
|
|
|
|
base system or as an optional software component, OpenSSL often
|
|
|
|
|
requires separate installation.
|
|
|
|
|
|
|
|
|
|
OpenSSL is available from {{URL: http://www.openssl.org/}}.
|
|
|
|
|
|
|
|
|
|
OpenLDAP will not be fully LDAPv3 compliant unless OpenLDAP's
|
|
|
|
|
configure detects a usable OpenSSL installation.
|
|
|
|
|
|
|
|
|
|
H3: Kerberos Software
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 01:20:00 -04:00
|
|
|
OpenLDAP clients and servers support Kerberos based authentication
|
|
|
|
|
services. In particular, OpenLDAP supports SASL/GSSAPI based
|
|
|
|
|
authentication using either Heimdal or MIT Kerberos V packages.
|
|
|
|
|
If you desire to use Kerberos based authentication, you should
|
|
|
|
|
install either Heimdal or MIT Kerberos V.
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
Heimdal Kerberos is available from {{URL:http://kth.se/}}.
|
|
|
|
|
MIT Kerberos is available from {{URL:http://mit.edu/}}.
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 01:20:00 -04:00
|
|
|
H3: SASL Software
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
OpenLDAP clients and servers require installation of {{PRD:Cyrus}}
|
|
|
|
|
SASL libraries to provide {{TERM[expand]SASL}} services. Though
|
2000-08-09 01:20:00 -04:00
|
|
|
some operating sytems may provide this library as part of the
|
|
|
|
|
base system or as an optional software component, Cyrus SASL
|
|
|
|
|
often requires separate installation.
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
Cyrus SASL is available from {{URL:http://asg.cmu.edu/cyrus/sasl/}}.
|
|
|
|
|
Cyrus SASL will make use of Kerberos libraries if preinstalled.
|
2000-08-09 01:20:00 -04:00
|
|
|
|
|
|
|
|
OpenLDAP will not be fully LDAPv3 compliant unless OpenLDAP's
|
|
|
|
|
configure detects a usable Cyrus SASL installation.
|
|
|
|
|
|
|
|
|
|
H3: Database software
|
|
|
|
|
|
|
|
|
|
OpenLDAP's {{slapd}}(8) primary database backend, {{TERM:LDBM}},
|
|
|
|
|
requires that a compatible database package for entry storage. LDBM
|
2000-08-09 02:48:33 -04:00
|
|
|
is compatible with {{ORG[expand]Sleepy}}'s {{PRD:BerkeleyDB}} (recommended)
|
|
|
|
|
or the {{ORG[expand]FSF}}'s {{PRD:GNU}} Database Manager ({{PRD:GDBM}}).
|
2000-08-09 01:20:00 -04:00
|
|
|
If neither of these packages are available at configure time,
|
|
|
|
|
you will not be able build slapd(8) with primary database backend.
|
|
|
|
|
|
|
|
|
|
Your operating system may provide one of these two packages in
|
|
|
|
|
in base system or as an optional software component. You may
|
|
|
|
|
need may need to obtain the software and install it yourself.
|
|
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
{{PRD:BerkeleyDB}} is available from {{ORG[expand]Sleepy}}'s
|
|
|
|
|
download page {{URL: http://www.sleepycat.com/download.html}}.
|
|
|
|
|
There are several versions available. At the time of this writing,
|
2000-08-09 01:20:00 -04:00
|
|
|
version 3.1, the latest release, is recommended.
|
|
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
{{PRD:GDBM}} is available from {{ORG:FSF}}'s download site
|
|
|
|
|
{{URL: ftp://ftp.gnu.org/pub/gnu/gdbm/}}.
|
2000-08-09 01:20:00 -04:00
|
|
|
At the time of this writing, version 1.8 is the latest release.
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
H2: Configuring OpenLDAP
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 01:20:00 -04:00
|
|
|
If you haven't already done so, extra the distribution for the
|
|
|
|
|
compressed archive file and change directory to the top of the
|
|
|
|
|
distribution:
|
|
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
.{{EX:gunzip -c openldap-VERSION.tgz | tar xf -}}
|
|
|
|
|
.{{EX:cd openldap-VERSION}}
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 01:20:00 -04:00
|
|
|
Replacing {{EX:VERSION}} with the appropriate version string.
|
|
|
|
|
|
|
|
|
|
Now you should probably run the {{EX:configure}} script with the
|
|
|
|
|
{{EX:--help}} option.
|
2000-08-09 00:28:44 -04:00
|
|
|
This will give you a list of options that you can change when building
|
|
|
|
|
OpenLDAP. Many of the features of OpenLDAP can be enabled or disabled
|
|
|
|
|
using this method. Please see the appendix for a more detailed list
|
|
|
|
|
of configure options, and their usage.
|
|
|
|
|
.{{EX:./configure --help}}
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
The {{EX:configure}} script will also look at certain environment variables
|
2000-08-09 00:28:44 -04:00
|
|
|
for certain settings. These environment variables are:
|
2000-08-09 02:48:33 -04:00
|
|
|
|
|
|
|
|
!block table; align=center
|
|
|
|
|
Variable Description
|
|
|
|
|
{{EX:CC}} Specify alternative C Compiler
|
|
|
|
|
{{EX:CFLAGS}} Specify additional compiler flags
|
|
|
|
|
{{EX:CPPFLAGS}} Specify C Preprocessor flags
|
|
|
|
|
{{EX:LDFLAGS}} Specify linker flags
|
|
|
|
|
{{EX:LIBS}} Specify additional libraries
|
2000-08-09 00:28:44 -04:00
|
|
|
!endblock
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
Now run the configure script with any desired configure options or
|
|
|
|
|
environment variables.
|
2000-08-09 02:48:33 -04:00
|
|
|
|
|
|
|
|
.{{EX: [[env] settings] ./configure [options]}}
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
As an example, lets assume that we want a copy of OpenLDAP configured to use the
|
|
|
|
|
LDBM backend, and the shell backend. The LDBM backend is turned on by default, so we don't need to do anything special to enable it.
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
Additionally, we've installed the BerkeleyDB database package.
|
2000-08-09 02:48:33 -04:00
|
|
|
{{EX:configure}} is smart enough to use BerkeleyDB automatically
|
|
|
|
|
if it can find it, but BerkeleyDB is installed by default in a
|
|
|
|
|
place {{EX:configure}} won't look at automatically. BerkeleyDB
|
|
|
|
|
is usually installed in {{F:/usr/local/BerkeleyDB.3.1}} (assuming
|
|
|
|
|
that version 3.1 is being used.)
|
|
|
|
|
|
|
|
|
|
The following example shows how to run {{EX:configure}} and specify where to
|
|
|
|
|
find BerkeleyDB and turn on the DNSSRV backend. The example should be
|
2000-08-09 00:28:44 -04:00
|
|
|
entered on a single line (it has been split onto seperate lines for clarity.)
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
.{{EX: env CPPFLAGS="-I/usr/local/BerkeleyDB.3.1/include" \ }}
|
|
|
|
|
..{{EX: LDFLAGS="-L/usr/local/BerkeleyDB.3.1/lib" \ }}
|
|
|
|
|
..{{EX: ./configure --enable-dnssrv}}
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
Note: that some shells, such as those derived from the Bourne {{sh}}(1),
|
|
|
|
|
do not require use of the {{env}}(1) command. In some cases, environmental
|
|
|
|
|
variables have to be specified using alternative syntaxes.
|
1999-05-02 21:19:22 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
For more information on backends see the chapter on configuration.
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
The {{EX:configure}} script will normally auto-detect appropriate settings.
|
2000-08-09 00:28:44 -04:00
|
|
|
If you have problems at this stage, consult any platform specific
|
2000-08-09 02:48:33 -04:00
|
|
|
hints and check your {{EX:configure}} options if any.
|
1999-05-02 21:19:22 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
H2: Building the Software
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
Once you have run the {{EX:configure}} script the last line of output
|
|
|
|
|
should be:
|
2000-08-09 00:28:44 -04:00
|
|
|
.{{EX:Please "make depend" to build dependencies}}
|
1999-05-02 21:19:22 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
If the last line of output does not match, {{EX:configure}} has failed.
|
|
|
|
|
You should not proceed until {{EX:configure}} completes sucessfuly.
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
Now run make depend.
|
|
|
|
|
.{{EX: make depend}}
|
1999-05-02 21:19:22 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
Now run make, this step will actually compile OpenLDAP.
|
|
|
|
|
.{{EX: make}}
|
1999-04-23 19:00:44 -04:00
|
|
|
|
|
|
|
|
You should examine the output of this command carefully to make sure
|
|
|
|
|
everything is built correctly. Note that this command builds the LDAP
|
2000-08-09 02:48:33 -04:00
|
|
|
libraries and associated clients as well as {{slapd}}(8) and {{slurpd}}(8).
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
Note that the OpenLDAP distribution can support building for multiple
|
1999-04-23 19:00:44 -04:00
|
|
|
platforms from a single source tree. If you want to do this, consult the
|
2000-08-09 02:48:33 -04:00
|
|
|
{{F: INSTALL}} file in the top level distribution directory.
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
H2: Testing the Software
|
1999-04-23 19:00:44 -04:00
|
|
|
|
|
|
|
|
Once the software has been properly configured and successfully
|
2000-08-09 02:48:33 -04:00
|
|
|
made, you should run the test suite to verify the build.
|
|
|
|
|
|
|
|
|
|
.{{EX: make test}}
|
|
|
|
|
|
|
|
|
|
The test will run a number of tests.
|
|
|
|
|
|
|
|
|
|
H2: Installing the Software
|
|
|
|
|
|
|
|
|
|
One you have successfully tested the software, you are ready to install it.
|
|
|
|
|
You will need to have write permission
|
2000-08-09 00:28:44 -04:00
|
|
|
to the installation directories you specified when you ran configure.
|
2000-08-09 01:20:00 -04:00
|
|
|
By default OpenLDAP is installed in {{F:/usr/local}}. If you changed this
|
2000-08-09 02:48:33 -04:00
|
|
|
setting with the {{F:--prefix}} configure option, it will be installed
|
2000-08-09 00:28:44 -04:00
|
|
|
in the location you provided.
|
|
|
|
|
|
2000-08-09 02:48:33 -04:00
|
|
|
Typically, the installation is done as {{root}}. From the top level OpenLDAP
|
|
|
|
|
source directory, type:
|
1999-04-23 19:00:44 -04:00
|
|
|
|
2000-08-09 00:28:44 -04:00
|
|
|
.{{EX: make install}}
|
1999-04-23 19:00:44 -04:00
|
|
|
|
|
|
|
|
You should examine the output of this command carefully to make sure
|
2000-08-09 00:28:44 -04:00
|
|
|
everything is installed correctly. You will find the configuration files
|
2000-08-09 01:20:00 -04:00
|
|
|
for slapd in {{F:/usr/local/etc/openldap}} by default. See chapter 5 for more
|
2000-08-09 00:28:44 -04:00
|
|
|
information on the configuration files.
|
1999-04-23 19:00:44 -04:00
|
|
|
|