1 Making and Installing the OpenLDAP Distribution
4 ** It is recommended that you read or at least skim through ALL of the
5 ** instructions in this file before attempting to build the software.
7 ** You should also check for platform specific hints.
8 ** These are located in doc/install/hints.
11 If you want to build binaries for more than one platform from a single
12 source tree, skip ahead to the "Building LDAP For More Than One Platform"
13 section near the end of this file.
15 If you simply want to build LDAP for a single machine platform, follow
18 1. untar the distribution and cd to the top:
20 % tar xfz openldap-VERSION.tgz
23 If you are reading this file, you probably have already done this!
28 to list available configuration options. A description of
29 these options is provided in the 'CONFIGURE OPTIONS' section
32 The configure script uses environmental variables for
33 determining compiler/linker options. See the HINTS
34 section for commonly used settings.
36 These environment variables are used:
37 CC C Compiler (cc, ecgs)
38 CFLAGS C Flags (-ansi)
39 CPPFLAGS CPP Flags (-I/path/include -Ddef)
40 LDFLAGS LDFLAGS (-L/path/lib -llib)
42 See the 'USING ENVIRONMENT VARIABLES' section for information
43 on how to use the variables.
45 3. edit the file include/ldapconfig.h.edit to configure
46 the software for your site (the files are well-commented):
48 % vi include/ldapconfig.h.edit
50 4. Configure the build system
52 % [env settings] ./configure [options]
54 If all goes well, the configure script with auto-detect the
55 appropriate settings. Use configure enable/with options and/or
56 environment variables to obtain desired results.
66 If all goes well, the system will build as configured. If not,
67 return to step 4 after reviewing the enable/with options settings.
69 7. install the binaries and man pages. You may need to be superuser to
70 do this (depending on where you are installing things):
75 That's it! See the man pages for the individual clients for information
76 on configuring and using them. Eventually you will probably want to
77 edit the configuration files used by the various clients (installed in
78 the LDAP etc directory). The files are:
80 ldapfilter.conf - search filter configuration
81 ldapfriendly - mapping of X.500 names to human-friendly names
82 ldapsearchprefs.conf - search object definitions
83 ldaptemplates.conf - display template definitions
85 There are section 5 man pages for all of these files.
88 Building LDAP For More Than One Platform
90 It is now possible to build LDAP for more than one platform from the same
91 source tree. This is accomplished by using make(1) VPATH support. If
92 your make(1) program is old and doesn't have VPATH support, install GNU
95 Follow these steps for each different platform:
97 1. Create a directory for the platform object files.
101 2. Change your working directory to the platform object directory.
105 3. Configure the build system
107 % [env settings] ../configure --src-dir=.. [options]
109 ( replace ".." with the appropriate path )
111 4. Continue as above (starting at step 6).
113 Note: make depend in VPATH environment is not yet supported.
118 Regrettably, this section has not been written (yet). See
119 "./configure --help" for current list of options.
122 USING ENVIRONMENT VARIABLES
124 The configure script will also use your environmental
125 variables for determining compiler/linker options. This can
126 be used to manual specify features and compilation options.
128 Supported Environmental Variables
129 CC C Compiler (cc, ecgs)
130 CFLAGS C Flags (-ansi)
131 CPPFLAGS CPP Flags (-I/path/include -Ddef)
132 LDFLAGS LDFLAGS (-L/path/lib -llib)
133 PATH command path /usr/local/bin:/usr/bin:/bin
135 * Including alternative compilers
136 Use the CC environment variable to tell configure to
137 use a specific compiler. For example, to use ecgs
138 instead of the compiler configure choose, use:
140 [env] CC=ecgs ./configure
142 You can also use CC use specific flags with the
143 specified compiler. For example, to require strict
144 ANSI C using the GNU C Compiler, use:
146 [env] CC="gcc -ansi -predantic" ./configure
148 (you can use CFLAGS to specify compiler flags)
151 You may specify additional preprocessor flags by setting
152 CPPFLAGS. For example, if you would like to use headers
153 installed in /usr/local/include, use:
155 [env] CPPFLAGS="-I/usr/local/include" ./configure
157 You can also use CPPFLAGS to specify preprocessor macros.
159 [env] CPPFLAGS="-D__SPECIAL_FLAG__" ./configure
162 You may specify additional linker flags by setting LDFLAGS.
163 For example, if you would like to use libraries installed
164 in /usr/local/lib, use:
166 [env] LDFLAGS="-L/usr/local/lib" ./configure
168 You can also use CPPFLAGS to specify linker flags:
170 [env] LDFLAGS="-Bstatic" ./configure
173 You may alter your path to affect configure ability to
174 find (or not find) commands. For example, to have configure
175 additionally look in /usr/css/bin for commands, use:
177 [env] PATH="/usr/css/bin:$PATH" ./configure
182 * use software under installed in /usr/local/{include,lib}
184 CPPFLAGS="-I/usr/local/include" \
185 LDFLAGS="-L/usr/local/lib" \
189 End of OpenLDAP INSTALL file.