openldap/INSTALL

228 lines
6.4 KiB
Plaintext

Making and Installing the OpenLDAP Distribution
**
** It is recommended that you read or at least skim through ALL of the
** instructions in this file before attempting to build the software.
**
** A draft of the "OpenLDAP Administrator's Guide", which includes a
** quick start guide, is available at:
** http://www.openldap.org/devel/admin/
**
** The OpenLDAP Installation FAQ is available at:
** http://www.openldap.org/faq/index.cgi?file=8
**
** You should also check for platform specific hints located on
** on our web site.
** http://www.openldap.org/faq/index.cgi?file=9
**
If you want to build binaries for more than one platform from a single
source tree, skip ahead to the "Building LDAP For More Than One Platform"
section near the end of this file.
If you simply want to build LDAP for a single machine platform, follow
these steps:
1. untar the distribution and cd to the top:
% tar xfz openldap-VERSION.tgz
% cd openldap-VERSION
replacing VERSION to match the version you downloaded. If you are
reading this file, you probably have already done this!
2. Type:
% ./configure --help
to list available configuration options. A description of
these options is provided in the 'CONFIGURE OPTIONS' section
below.
The configure script uses environmental variables for
determining compiler/linker options. See the HINTS
section for commonly used settings.
These environment variables are used:
CC C Compiler (cc, ecgs)
CFLAGS C Flags (-O -g)
CPPFLAGS CPP Flags (-I/path/include -Ddef)
LDFLAGS LDFLAGS (-L/path/lib)
LIBS LIBS (-llib)
See the 'USING ENVIRONMENT VARIABLES' section for information
on how to use the variables.
3. Configure the build system
% [env settings] ./configure [options]
If all goes well, the configure script with auto-detect the
appropriate settings. Use configure enable/with options and/or
environment variables to obtain desired results.
4. Build dependencies
% make depend
5. Build the system
% make
If all goes well, the system will build as configured. If not,
return to step 4 after reviewing the configuration settings.
You may want to consult the doc/install/hints file for your
platform.
6. Test the standalone system
This step requires the standalone LDAP server (slapd) with
LDBM support.
% cd tests
% make test
If all goes well, the system has been built as configured. If not,
return to step 4 after reviewing your configuration settings.
You may want to consult the doc/install/hints file for your
platform.
7. install the binaries and man pages. You may need to be superuser to
do this (depending on where you are installing things):
% su root -c 'make install'
That's it!
See the man pages for the individual applications for
information on configuring and using them. You may also want
to edit the configuration files used by the various clients.
These configuration files are located in the OpenLDAP
configuration directory (normally /usr/local/etc/openldap).
Client configuration files:
ldap.conf - client defaults
ldapfilter.conf - search filter configuration
ldapsearchprefs.conf - search object definitions
ldaptemplates.conf - display template definitions
Server configuration files:
slapd.conf - Standalone LDAP daemon configuration
schema/*.schema - Schema Definitions
There are section 5 man pages for these configuration files.
Building LDAP For More Than One Platform
It is now possible to build LDAP for more than one platform from the same
source tree. This is accomplished by using make(1) VPATH support. If
your make(1) program is old and doesn't have VPATH support, install GNU
Make.
Follow these steps for each different platform:
1. Create a directory for the platform object files.
% mkdir obj-platform
2. Change your working directory to the platform object directory.
% cd obj-platform
3. Configure the build system
% [env settings] ../configure --src-dir=.. [options]
( replace ".." with the appropriate path )
4. Continue as above (starting at step 6).
CONFIGURE OPTIONS
Regrettably, this section has not been written (yet). See
"./configure --help" for current list of options. For general
information about how to use "configure", please read:
doc/install/configure
USING ENVIRONMENT VARIABLES
The configure script will also use environmental variables for
determining compiler/linker options. This can be used to manually
specify features and compilation options.
WARNING: Executables built in your environment may not run
in your users' environments. The portability of
executables between environments is your responsibility.
Supported Environmental Variables
CC C compiler (cc, egcc)
CFLAGS C flags (-O -g)
CPPFLAGS cpp flags (-I/path/include -Ddef)
LDFLAGS ld flags (-L/usr/local/lib)
LIBS libraries (-llib)
PATH command path /usr/local/bin:/usr/bin:/bin
* Including alternative compilers
Use the CC environment variable to tell configure to
use a specific compiler. For example, to use GNU
C Compiler instead of the compiler configure choose,
use:
[env] CC=gcc ./configure
You can also use CC use specific flags with the
specified compiler. For example, to require strict
ANSI C using the GNU C Compiler, use:
[env] CC="gcc -ansi -pedantic" ./configure
(you can use CFLAGS to specify compiler flags)
* Preprocessor Flags
You may specify additional preprocessor flags by setting
CPPFLAGS. For example, if you would like to use headers
installed in /usr/local/include, use:
[env] CPPFLAGS="-I/usr/local/include" ./configure
You can also use CPPFLAGS to specify preprocessor macros.
[env] CPPFLAGS="-D__SPECIAL_FLAG__" ./configure
* Linker Flags
You may specify additional linker flags by setting LDFLAGS.
For example, if you would like to use libraries installed
in /usr/local/lib, use:
[env] LDFLAGS="-L/usr/local/lib" ./configure
You can also use CPPFLAGS to specify linker flags:
[env] LDFLAGS="-Bstatic" ./configure
* Path
You may alter your path to affect configure ability to
find (or not find) commands. For example, to have configure
additionally look in /usr/css/bin for commands, use:
[env] PATH="/usr/css/bin:$PATH" ./configure
HINTS
* Platform specific hints are available in doc/install/hints.
* Use software under installed in /usr/local/{include,lib}
[env] \
CPPFLAGS="-I/usr/local/include" \
LDFLAGS="-L/usr/local/lib" \
./configure
---
$OpenLDAP$