]> granicus.if.org Git - apache/blob - docs/manual/programs/configure.html.en
xforms
[apache] / docs / manual / programs / configure.html.en
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
4         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5               This file is generated from xml source: DO NOT EDIT
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7       -->
8 <title>configure - Configure the source tree - Apache HTTP Server</title>
9 <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
12 <script src="../style/scripts/prettify.js" type="text/javascript">
13 </script>
14
15 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
16 <body id="manual-page"><div id="page-header">
17 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p>
18 <p class="apache">Apache HTTP Server Version 2.5</p>
19 <img alt="" src="../images/feather.gif" /></div>
20 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
21 <div id="path">
22 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.5</a> &gt; <a href="./">Programs</a></div><div id="page-content"><div id="preamble"><h1>configure - Configure the source tree</h1>
23 <div class="toplang">
24 <p><span>Available Languages: </span><a href="../en/programs/configure.html" title="English">&nbsp;en&nbsp;</a> |
25 <a href="../ko/programs/configure.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
26 <a href="../tr/programs/configure.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
27 </div>
28
29     <p>The <code>configure</code> script configures the source tree
30     for compiling and installing the Apache HTTP Server on your
31     particular platform. Various options allow the compilation of a
32     server corresponding to your personal requirements.</p>
33
34     <p>This script, included in the root directory of the source
35     distribution, is for compilation on Unix and Unix-like systems
36     only. For other platforms, see the <a href="../platform/">platform</a> documentation.</p>
37 </div>
38 <div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#synopsis">Synopsis</a></li>
39 <li><img alt="" src="../images/down.gif" /> <a href="#options">Options</a></li>
40 <li><img alt="" src="../images/down.gif" /> <a href="#env">Environment variables</a></li>
41 </ul><h3>See also</h3><ul class="seealso"><li><a href="../install.html">Compiling and Installing</a></li></ul><ul class="seealso"><li><a href="#comments_section">Comments</a></li></ul></div>
42 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
43 <div class="section">
44 <h2><a name="synopsis" id="synopsis">Synopsis</a></h2>
45     <p>You should call the <code>configure</code> script from within the
46     root directory of the distribution.</p>
47
48     <p><code><strong>./configure</strong> [<var>OPTION</var>]...
49     [<var>VAR</var>=<var>VALUE</var>]...</code></p>
50
51     <p>To assign environment variables (e.g. <code>CC</code>,
52     <code>CFLAGS</code> ...), specify them as
53     <code><var>VAR</var>=<var>VALUE</var></code>. See <a href="#env">below</a>
54     for descriptions of some of the useful variables.</p>
55 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
56 <div class="section">
57 <h2><a name="options" id="options">Options</a></h2>
58   <ul>
59     <li><a href="#configurationoptions">Configuration options</a></li>
60     <li><a href="#installationdirectories">Installation directories</a></li>
61     <li><a href="#systemtypes">System types</a></li>
62     <li><a href="#optionalfeatures">Optional features</a></li>
63     <li><a href="#supportopt">Options for support programs</a></li>
64   </ul>
65
66   <h3><a name="configurationoptions" id="configurationoptions">Configuration options</a></h3>
67
68     <p>The following options influence the behavior of
69     <code>configure</code> itself.</p>
70
71     <dl>
72       <dt><code>-C</code></dt>
73       <dt><code>--config-cache</code></dt>
74       <dd>This is an alias for <code>--cache-file=config.cache</code></dd>
75
76       <dt><code>--cache-file=<var>FILE</var></code></dt>
77       <dd>The test results will be cached in file <var>FILE</var>.
78         This option is disabled by default.</dd>
79
80       <dt><code>-h</code></dt>
81       <dt><code>--help [short|recursive]</code></dt>
82       <dd>Output the help and exit. With the argument <code>short</code> only
83         options specific to this package will displayed. The argument
84         <code>recursive</code> displays the short help of all the included
85         packages.</dd>
86
87       <dt><code>-n</code></dt>
88       <dt><code>--no-create</code></dt>
89       <dd>The <code>configure</code> script is run normally but does
90         not create output files. This is useful to check the test results
91         before generating makefiles for compilation.</dd>
92
93       <dt><code>-q</code></dt>
94       <dt><code>--quiet</code></dt>
95       <dd>Do not print <code>checking ...</code> messages during the
96         configure process.</dd>
97
98       <dt><code>--srcdir=<var>DIR</var></code></dt>
99       <dd>Defines directory <var>DIR</var> to be the source file directory.
100         Default is the directory where <code>configure</code> is located, or
101         the parent directory.</dd>
102
103       <dt><code>--silent</code></dt>
104       <dd>Same as <code>--quiet</code></dd>
105
106       <dt>-V</dt>
107       <dt>--version</dt>
108       <dd>Display copyright information and exit.</dd>
109     </dl>
110   
111
112   <h3><a name="installationdirectories" id="installationdirectories">Installation
113     directories</a></h3>
114
115     <p>These options define the installation directory. The installation
116       tree depends on the selected layout.</p>
117
118     <dl>
119       <dt><code>--prefix=<var>PREFIX</var></code></dt>
120       <dd>Install architecture-independent files in <var>PREFIX</var>.
121         By default the installation directory is set to
122         <code>/usr/local/apache2</code>.</dd>
123
124       <dt><code>--exec-prefix=<var>EPREFIX</var></code></dt>
125       <dd>Install architecture-dependent files in <var>EPREFIX</var>.
126         By default the installation directory is set to the
127         <var>PREFIX</var> directory.</dd>
128     </dl>
129
130     <p>By default, <code>make install</code> will install all the files in
131       <code>/usr/local/apache2/bin</code>, <code>/usr/local/apache2/lib</code>
132       etc. You can specify an installation prefix other than
133       <code>/usr/local/apache2</code> using <code>--prefix</code>,
134       for instance <code>--prefix=$HOME</code>.</p>
135
136     <h4><a name="layout" id="layout">Define a directory layout</a></h4>
137       <dl>
138         <dt><code>--enable-layout=<var>LAYOUT</var></code></dt>
139         <dd>Configure the source code and build scripts to assume an
140           installation tree based on the layout <var>LAYOUT</var>. This allows
141           you to separately specify the locations for each type of file within
142           the Apache HTTP Server installation. The <code>config.layout</code>
143           file contains several example configurations, and you can also create
144           your own custom configuration following the examples. The different
145           layouts in this file are grouped into <code>&lt;Layout
146             FOO&gt;...&lt;/Layout&gt;</code> sections and referred to by name as
147           in <code>FOO</code>. The default layout is <code>Apache</code>.</dd>
148       </dl>
149     
150
151     <h4><a name="directoryfinetuning" id="directoryfinetuning">Fine tuning of the installation
152       directories</a></h4>
153
154       <p>For better control of the installation directories, use the options
155         below. Please note that the directory defaults are set by
156         <code>autoconf</code> and are overwritten by the corresponding layout
157         setting.</p>
158
159       <dl>
160         
161         <dt><code>--bindir=<var>DIR</var></code></dt>
162         <dd>Install user executables in <var>DIR</var>. The user executables
163           are supporting programs like <code class="program"><a href="../programs/htpasswd.html">htpasswd</a></code>,
164           <code class="program"><a href="../programs/dbmmanage.html">dbmmanage</a></code>, etc. which are useful for site
165           administrators. By default <var>DIR</var> is set to
166           <code><var>EPREFIX</var>/bin</code>.</dd>
167
168         <dt><code>--datadir=<var>DIR</var></code></dt>
169         <dd>Install read-only architecture-independent data in <var>DIR</var>.
170           By default <code>datadir</code> is set to
171           <code><var>PREFIX</var>/share</code>. This option is offered by
172           <code>autoconf</code> and currently unused.</dd>
173
174         <dt><code>--includedir=<var>DIR</var></code></dt>
175         <dd>Install C header files in <var>DIR</var>. By default
176           <code>includedir</code> is set to
177           <code><var>EPREFIX</var>/include</code>.</dd>
178
179         <dt><code>--infodir=<var>DIR</var></code></dt>
180         <dd>Install info documentation in <var>DIR</var>.
181           By default <code>infodir</code> is set to
182           <code><var>PREFIX</var>/info</code>. This option is currently
183           unused.</dd>
184
185         <dt><code>--libdir=<var>DIR</var></code></dt>
186         <dd>Install object code libraries in <var>DIR</var>. By default
187           <code>libdir</code> is set to
188           <code><var>EPREFIX</var>/lib</code>.</dd>
189
190         <dt><code>--libexecdir=<var>DIR</var></code></dt>
191         <dd>Install the program executables (i.e., shared modules) in
192           <var>DIR</var>. By default <code>libexecdir</code> is set to
193           <code><var>EPREFIX</var>/modules</code>.</dd>
194
195         <dt><code>--localstatedir=<var>DIR</var></code></dt>
196         <dd>Install modifiable single-machine data in <var>DIR</var>.
197           By default <code>localstatedir</code> is set to
198           <code><var>PREFIX</var>/var</code>. This option is offered by
199           <code>autoconf</code> and currently unused.</dd>
200
201         <dt><code>--mandir=<var>DIR</var></code></dt>
202         <dd>Install the man documentation in <var>DIR</var>. By default
203           <code>mandir</code> is set to
204           <code><var>EPREFIX</var>/man</code>.</dd>
205
206         <dt><code>--oldincludedir=<var>DIR</var></code></dt>
207         <dd>Install C header files for non-gcc in <var>DIR</var>.
208           By default <code>oldincludedir</code> is set to
209           <code>/usr/include</code>. This option is offered by
210           <code>autoconf</code> and currently unused.</dd>
211
212         <dt><code>--sbindir=<var>DIR</var></code></dt>
213         <dd>Install the system administrator executables in <var>DIR</var>.
214           Those are server programs like <code class="program"><a href="../programs/httpd.html">httpd</a></code>,
215           <code class="program"><a href="../programs/apachectl.html">apachectl</a></code>, <code class="program"><a href="../programs/suexec.html">suexec</a></code>, etc. which
216           are necessary to run the Apache HTTP Server. By default
217           <code>sbindir</code> is set to
218           <code><var>EPREFIX</var>/sbin</code>.</dd>
219
220         <dt><code>--sharedstatedir=<var>DIR</var></code></dt>
221         <dd>Install modifiable architecture-independent data in <var>DIR</var>.
222           By default <code>sharedstatedir</code> is set to
223           <code><var>PREFIX</var>/com</code>. This option is offered by
224           <code>autoconf</code> and currently unused.</dd>
225
226         <dt><code>--sysconfdir=<var>DIR</var></code></dt>
227         <dd>Install read-only single-machine data like the server configuration
228           files <code>httpd.conf</code>, <code>mime.types</code>, etc. in
229           <var>DIR</var>. By default <code>sysconfdir</code> is set to
230           <code><var>PREFIX</var>/conf</code>.</dd>
231       </dl>
232     
233   
234
235   <h3><a name="systemtypes" id="systemtypes">System types</a></h3>
236
237     <p>These options are used to cross-compile the Apache HTTP Server to run on
238       another system. In normal cases, when building and running the server on
239       the same system, these options are not used.</p>
240
241     <dl>
242       <dt><code>--build=<var>BUILD</var></code></dt>
243       <dd>Defines the system type of the system on which the tools are being
244         built. It defaults to the result of the script
245         <code>config.guess</code>.</dd>
246
247       <dt><code>--host=<var>HOST</var></code></dt>
248       <dd>Defines the system type of the system on which the server will run.
249         <var>HOST</var> defaults to <var>BUILD</var>.</dd>
250
251       <dt><code>--target=<var>TARGET</var></code></dt>
252       <dd>Configure for building compilers for the system type
253         <var>TARGET</var>. It defaults to <var>HOST</var>. This option is
254         offered by <code>autoconf</code> and not necessary for the Apache HTTP
255         Server.</dd>
256     </dl>
257   
258
259   <h3><a name="optionalfeatures" id="optionalfeatures">Optional Features</a></h3>
260
261     <p>These options are used to fine tune the features your HTTP server will
262       have.</p>
263
264     <h4><a name="generaloptfeat" id="generaloptfeat">General syntax</a></h4>
265       <p>Generally you can use the following syntax to enable or disable a
266         feature:</p>
267
268       <dl>
269         <dt><code>--disable-<var>FEATURE</var></code></dt>
270         <dd>Do not include <var>FEATURE</var>. This is the same as
271           <code>--enable-<var>FEATURE</var>=no</code>.</dd>
272
273         <dt><code>--enable-<var>FEATURE</var>[=<var>ARG</var>]</code></dt>
274         <dd>Include <var>FEATURE</var>. The default value for <var>ARG</var>
275           is <code>yes</code>.</dd>
276
277         <dt><code>--enable-<var>MODULE</var>=shared</code></dt>
278         <dd>The corresponding module will be build as DSO module.
279             By default enabled modules are linked dynamically.</dd>
280
281         <dt><code>--enable-<var>MODULE</var>=static</code></dt>
282         <dd>The corresponding module will be linked statically.</dd>
283       </dl>
284
285       <div class="note"><h3>Note</h3>
286         <code>configure</code> will not complain about
287         <code>--enable-<var>foo</var></code> even if <var>foo</var> doesn't
288         exist, so you need to type carefully.
289       </div>
290     
291
292     <h4><a name="choosemodules" id="choosemodules">Choosing modules to compile</a></h4>
293       <p>Most modules are compiled by default and have to be disabled
294         explicitly or by using the keywords <code>few</code> or
295         <code>none</code> (see <code>--enable-modules</code>,
296         <code>--enable-mods-shared</code> and <code>--enable-mods-static</code>
297         below for further explanation) to be removed.</p>
298
299         <p>Other modules are not compiled by default and have to be enabled
300         explicitly or by using the keywords <code>all</code> or
301         <code>reallyall</code> to be available.</p>
302
303         <p>To find out which modules are compiled by default, run
304         <code>./configure -h</code> or <code>./configure --help</code>
305         and look under <code>Optional Features</code>.  Suppose you
306         are interested in <code class="module"><a href="../mod/mod_example1.html">mod_example1</a></code> and
307         <code class="module"><a href="../mod/mod_example2.html">mod_example2</a></code>, and you
308         see this:</p>
309
310         <div class="example"><pre>Optional Features:
311   ...
312   --disable-example1     example module 1
313   --enable-example2      example module 2
314   ...</pre></div>
315
316         <p>Then <code>mod_example1</code> is enabled by default,
317         and you would use <code>--disable-example1</code> to not
318         compile it.  <code>mod_example2</code> is disabled by
319         default, and you would use <code>--enable-example2</code>
320         to compile it.</p>
321     
322
323     <h4><a name="mpms" id="mpms">Multi-Processing Modules</a></h4>
324       <p><a href="../mpm.html">Multi-Processing Modules</a>, or MPMs, implement
325         the basic behavior of the server.  A single MPM must be active in order
326         for the server to function.  The list of available MPMs appears on the
327         <a href="../mod/">module index page</a>.</p>
328
329       <p>MPMs can be built as DSOs for dynamic loading or statically linked with
330         the server, and are enabled using the following options:</p>
331
332       <dl>
333         <dt><code>--with-mpm=MPM</code></dt>
334         <dd>
335           <p>Choose the default MPM for your server.  If MPMs are built as DSO
336             modules (see <code>--enable-mpms-shared</code>), this directive
337             selects the MPM which will be loaded in the default configuration
338             file.  Otherwise, this directive selects the only available MPM,
339             which will be statically linked into the server.</p>
340           <p>If this option is omitted, the <a href="../mpm.html#defaults">default
341           MPM</a> for your operating system will be used.</p>
342         </dd>
343
344         <dt><code>--enable-mpms-shared=<var>MPM-LIST</var></code></dt>
345         <dd>
346           <p>Enable a list of MPMs as dynamic shared modules.  One of these
347             modules must be loaded dynamically using the
348             <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> directive.</p>
349           <p><var>MPM-LIST</var> is a space-separated list of MPM names
350             enclosed by quotation marks.  For example:</p>
351           <div class="example"><p><code>
352             --enable-mpms-shared='prefork worker'
353           </code></p></div>
354           <p>Additionally you can use the special keyword <code>all</code>,
355             which will select all MPMs which support dynamic loading on the
356             current platform and build them as DSO modules.  For example:</p>
357           <div class="example"><p><code>
358             --enable-mpms-shared=all
359           </code></p></div>
360         </dd>
361       </dl>
362     
363
364     <h4><a name="modules" id="modules">Third-party modules</a></h4>
365       <p>To add additional third-party modules use the following options:</p>
366
367       <dl>
368         <dt><code>--with-module=<var>module-type</var>:<var>module-file</var>[,
369           <var>module-type</var>:<var>module-file</var>]</code></dt>
370         <dd><p>Add one or more third-party modules to the list of statically linked
371             modules. The module source file <code><var>module-file</var></code>
372             will be searched in the <code>modules/<var>module-type</var></code>
373             subdirectory of your Apache HTTP server source tree. If it is not found
374             there <code>configure</code> is considering <var>module-file</var> to be
375             an absolute file path and tries to copy the source file into the
376             <var>module-type</var> subdirectory. If the subdirectory doesn't
377             exist it will be created and populated with a standard
378             <code>Makefile.in</code>.</p>
379           <p>This option is useful to add small external modules consisting of
380             one source file. For more complex modules you should read the
381             vendor's documentation.</p>
382           <div class="note"><h3>Note</h3>
383             If you want to build a DSO module instead of a statically linked
384             use <code class="program"><a href="../programs/apxs.html">apxs</a></code>.</div>
385         </dd>
386       </dl>
387     
388
389     <h4><a name="otheroptfeat" id="otheroptfeat">Cumulative and other options</a></h4>
390       <dl>
391         <dt><code>--enable-maintainer-mode</code></dt>
392         <dd>Turn on debugging and compile time warnings
393             and load all compiled modules.</dd>
394
395         <dt><code>--enable-mods-shared=<var>MODULE-LIST</var></code></dt>
396         <dd>
397           <p>Defines a list of modules to be enabled and build as dynamic
398             shared modules. This mean, these module have to be loaded
399             dynamically by using the  <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> directive.</p>
400           <p><var>MODULE-LIST</var> is a space separated list of modulenames
401             enclosed by quotation marks. The module names are given without the
402             preceding <code>mod_</code>. For example:</p>
403           <div class="example"><p><code>
404             --enable-mods-shared='headers rewrite dav'
405           </code></p></div>
406           <p>Additionally you can use the special keywords <code>reallyall</code>,
407             <code>all</code>, <code>most</code>, <code>few</code> and <code>none</code>.
408             For example,</p>
409           <div class="example"><p><code>
410             --enable-mods-shared=most
411           </code></p></div>
412           <p>will compile most modules and build them as DSO modules,</p>
413           <div class="example"><p><code>
414             --enable-mods-shared=few
415           </code></p></div>
416           <p>will only compile a very basic set of modules.</p>
417           <p>The default set is <code>most</code>.</p>
418             
419           <p>The <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> directives for
420           the chosen modules will be automatically generated in the main
421           configuration file. By default, all those directives will be commented
422           out except for the modules that are either required or explicitly selected
423           by a configure <code>--enable-foo</code> argument. You can change the set
424           of loaded modules by activating or deactivating the <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> directives in
425           <code>httpd.conf</code>. In addition the
426           <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> directives for all
427           built modules can be activated via the configure option
428           <code>--enable-load-all-modules</code>.</p>
429           <p><strong>Caveat:</strong>
430           <code>--enable-mods-shared=all</code> does not actually build all
431           modules. To build all modules then, one might use:</p>
432           <div class="example"><p><code>
433             ./configure \<br />
434             <span class="indent">
435                 --with-ldap \<br />
436                 --enable-mods-shared="all ssl ldap cache proxy authn_alias file_cache authnz_ldap charset_lite dav_lock cache_disk"
437             </span>
438           </code></p></div>
439         </dd>
440
441         <dt><code>--enable-mods-static=<var>MODULE-LIST</var></code></dt>
442         <dd>This option behaves similar to <code>--enable-mods-shared</code>,
443           but will link the given modules statically. This mean, these modules
444           will always be present while running <code class="program"><a href="../programs/httpd.html">httpd</a></code>. They need
445           not be loaded with <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code>.</dd>
446
447         <dt><code>--enable-modules=<var>MODULE-LIST</var></code></dt>
448         <dd>This option behaves like to <code>--enable-mods-shared</code>,
449           and will also link the given modules dynamically. The special
450           keyword <code>none</code> disables the build of all modules.</dd>
451
452         <dt><code>--enable-v4-mapped</code></dt>
453         <dd>Allow IPv6 sockets to handle IPv4 connections.</dd>
454
455         <dt><code>--with-port=<var>PORT</var></code></dt>
456         <dd>This defines the port on which <code class="program"><a href="../programs/httpd.html">httpd</a></code> will listen.
457           This port number is used when generating the configuration file
458           <code>httpd.conf</code>. The default is 80.</dd>
459
460         <dt><code>--with-program-name</code></dt>
461         <dd>Define an alternative executable name. The default is
462           <code>httpd</code>.</dd>
463       </dl>
464     
465   
466
467   <h3><a name="packages" id="packages">Optional packages</a></h3>
468     <p>These options are used to define optional packages.</p>
469
470     <h4><a name="generalpackages" id="generalpackages">General syntax</a></h4>
471       <p>Generally you can use the following syntax to define an optional
472         package:</p>
473
474       <dl>
475         <dt><code>--with-<var>PACKAGE</var>[=<var>ARG</var>]</code></dt>
476         <dd>Use the package <var>PACKAGE</var>. The default value for
477           <var>ARG</var> is <code>yes</code>.</dd>
478
479         <dt><code>--without-<var>PACKAGE</var></code></dt>
480         <dd>Do not use the package <var>PACKAGE</var>. This is the same as
481           <code>--with-<var>PACKAGE</var>=no</code>. This option is provided by
482           <code>autoconf</code> but not very useful for the Apache HTTP
483           Server.</dd>
484       </dl>
485     
486
487     
488
489     <h4><a name="packageopt" id="packageopt">Specific packages</a></h4>
490       <dl>
491         <dt><code>--with-apr=<var>DIR</var>|<var>FILE</var></code></dt>
492         <dd>The <a class="glossarylink" href="../glossary.html#apr" title="see glossary">Apache Portable Runtime</a> (APR)
493           is part of the httpd
494           source distribution and will automatically be build together with the
495           HTTP server. If you want to use an already installed APR instead you
496           have to tell <code>configure</code> the path to the
497           <code>apr-config</code> script. You may set the absolute path and name
498           or the directory to the installed APR. <code>apr-config</code> must
499           exist within this directory or the subdirectory
500           <code>bin</code>.</dd>
501
502         <dt><code>--with-apr-util=<var>DIR</var>|<var>FILE</var></code></dt>
503         <dd>The Apache Portable Runtime Utilities (APU) are part of the
504           httpd source distribution and will automatically be build
505           together with the HTTP server. If you want to use an already installed
506           APU instead you have to tell <code>configure</code> the path to the
507           <code>apu-config</code> script. You may set the absolute path and name
508           or the directory to the installed APU. <code>apu-config</code> must
509           exist within this directory or the subdirectory
510           <code>bin</code>.</dd>
511
512         <dt><code>--with-ssl=<var>DIR</var></code></dt>
513         <dd>If <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> has been enabled <code>configure</code>
514           searches for an installed OpenSSL. You can set the directory path
515           to the SSL/TLS toolkit instead.</dd>
516
517         <dt><code>--with-z=<var>DIR</var></code></dt>
518         <dd><code>configure</code> searches automatically for an installed
519           <code>zlib</code> library if your source configuration requires one
520           (e.g., when <code class="module"><a href="../mod/mod_deflate.html">mod_deflate</a></code> is enabled). You can set the
521           directory path to the compression library instead.</dd>
522       </dl>
523
524       <p>Several features of the Apache HTTP Server, including
525         <code class="module"><a href="../mod/mod_authn_dbm.html">mod_authn_dbm</a></code> and <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>'s DBM
526         <code class="directive"><a href="../mod/mod_rewrite.html#rewritemap">RewriteMap</a></code> use simple
527         key/value databases for quick lookups of information. SDBM is included
528         in the APU, so this database is always available. If you would like to
529         use other database types, use the following options to enable
530         them:</p>
531
532       <dl>
533         <dt><code>--with-gdbm[=<var>path</var>]</code></dt>
534         <dd>If no <var>path</var> is specified, <code>configure</code> will
535           search for the include files and libraries of a GNU DBM
536           installation in the usual search paths. An explicit
537           <var>path</var> will cause <code>configure</code> to look in
538           <code><var>path</var>/lib</code> and
539           <code><var>path</var>/include</code> for the relevant files.
540           Finally, the <var>path</var> may specify specific include and
541           library paths separated by a colon.</dd>
542
543         <dt><code>--with-ndbm[=<var>path</var>]</code></dt>
544         <dd>Like <code>--with-gdbm</code>, but searches for a New DBM
545           installation.</dd>
546
547         <dt><code>--with-berkeley-db[=<var>path</var>]</code></dt>
548         <dd>Like <code>--with-gdbm</code>, but searches for a Berkeley DB
549           installation.</dd>
550       </dl>
551
552       <div class="note"><h3>Note</h3>
553         <p>The DBM options are provided by the APU and passed through to its
554           configuration script. They are useless when using an already
555           installed APU defined by <code>--with-apr-util</code>.</p>
556         <p>You may use more then one DBM implementation together with your
557           HTTP server. The appropriated DBM type will be configured within
558           the runtime configuration at each time.</p>
559       </div>
560     
561   
562
563   <h3><a name="supportopt" id="supportopt">Options for support programs</a></h3>
564     <dl>
565       <dt><code>--enable-static-support</code></dt>
566       <dd>Build a statically linked version of the support binaries. This
567         means, a stand-alone executable will be built with all the necessary
568         libraries integrated. Otherwise the support binaries are linked
569         dynamically by default.</dd>
570
571       <dt><code>--enable-suexec</code></dt>
572       <dd>Use this option to enable <code class="program"><a href="../programs/suexec.html">suexec</a></code>, which allows you to set
573         uid and gid for spawned processes. <strong>Do not use this
574         option unless you understand all the security implications of
575         running a suid binary on your server.</strong> Further options
576         to configure <code class="program"><a href="../programs/suexec.html">suexec</a></code> are described <a href="#suexec">below</a>.</dd>
577     </dl>
578
579     <p>It is possible to create a statically linked binary of a single
580       support program by using the following options:</p>
581
582     <dl>
583       <dt><code>--enable-static-ab</code></dt>
584       <dd>Build a statically linked version of <code class="program"><a href="../programs/ab.html">ab</a></code>.</dd>
585
586       
587       <dt><code>--enable-static-checkgid</code></dt>
588       <dd>Build a statically linked version of <code>checkgid</code>.</dd>
589
590       <dt><code>--enable-static-htdbm</code></dt>
591       <dd>Build a statically linked version of <code class="program"><a href="../programs/htdbm.html">htdbm</a></code>.</dd>
592
593       <dt><code>--enable-static-htdigest</code></dt>
594       <dd>Build a statically linked version of <code class="program"><a href="../programs/htdigest.html">htdigest</a></code>.</dd>
595
596       <dt><code>--enable-static-htpasswd</code></dt>
597       <dd>Build a statically linked version of <code class="program"><a href="../programs/htpasswd.html">htpasswd</a></code>.</dd>
598
599       <dt><code>--enable-static-logresolve</code></dt>
600       <dd>Build a statically linked version of <code class="program"><a href="../programs/logresolve.html">logresolve</a></code>.</dd>
601
602       <dt><code>--enable-static-rotatelogs</code></dt>
603       <dd>Build a statically linked version of <code class="program"><a href="../programs/rotatelogs.html">rotatelogs</a></code>.</dd>
604     </dl>
605
606     <h4><a name="suexec" id="suexec"><code>suexec</code> configuration options</a></h4>
607       
608       <p>The following options are used to fine tune the behavior of <code class="program"><a href="../programs/suexec.html">suexec</a></code>. See <a href="suexec.html#install">Configuring and installing suEXEC</a>
609         for further information.</p>
610
611       <dl>
612         <dt><code>--with-suexec-bin</code></dt>
613         <dd>This defines the path to <code class="program"><a href="../programs/suexec.html">suexec</a></code> binary.
614         Default is <code>--sbindir</code> (see <a href="#directoryfinetuning">Fine tuning of installation directories</a>).</dd>
615
616         <dt><code>--with-suexec-caller</code></dt>
617         <dd>This defines the user allowed to call <code class="program"><a href="../programs/suexec.html">suexec</a></code>.
618           It should be the same as the user under which
619           <code class="program"><a href="../programs/httpd.html">httpd</a></code> normally runs.</dd>
620
621         <dt><code>--with-suexec-docroot</code></dt>
622         <dd>This defines the directory tree under which <code class="program"><a href="../programs/suexec.html">suexec</a></code> access is allowed for executables. Default value is
623           <code>--datadir/htdocs</code>.</dd>
624
625         <dt><code>--with-suexec-gidmin</code></dt>
626         <dd>Define this as the lowest GID allowed to be a target user for
627           <code class="program"><a href="../programs/suexec.html">suexec</a></code>. The default value is 100.</dd>
628
629         <dt><code>--with-suexec-logfile</code></dt>
630         <dd>This defines the filename of the <code class="program"><a href="../programs/suexec.html">suexec</a></code> logfile.
631           By default the logfile is named <code>suexec_log</code> and located in
632           <code>--logfiledir</code>.</dd>
633
634         <dt><code>--with-suexec-safepath</code></dt>
635         <dd>Define the value of the environment variable <code>PATH</code> to
636           be set for processes started by <code class="program"><a href="../programs/suexec.html">suexec</a></code>. Default
637           value is <code>/usr/local/bin:/usr/bin:/bin</code>.</dd>
638
639         <dt><code>--with-suexec-userdir</code></dt>
640         <dd>This defines the subdirectory under the user's directory that
641           contains all executables for which <code class="program"><a href="../programs/suexec.html">suexec</a></code> access
642           is allowed. This setting is necessary when you want to use
643           <code class="program"><a href="../programs/suexec.html">suexec</a></code> together with user-specific directories (as
644           provided by <code class="module"><a href="../mod/mod_userdir.html">mod_userdir</a></code>). The default is
645           <code>public_html</code>.</dd>
646
647         <dt><code>--with-suexec-uidmin</code></dt>
648         <dd>Define this as the lowest UID allowed to be a target user for
649           <code class="program"><a href="../programs/suexec.html">suexec</a></code>. The default value is 100.</dd>
650
651         <dt><code>--with-suexec-umask</code></dt>
652         <dd>Set <code>umask</code> for processes started by
653           <code class="program"><a href="../programs/suexec.html">suexec</a></code>. It defaults to your system settings.</dd>
654       </dl>
655     
656   
657 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
658 <div class="section">
659 <h2><a name="env" id="env">Environment variables</a></h2>
660   <p>There are some useful environment variables to override the choices made by
661     <code>configure</code> or to help it to find libraries and programs with
662     nonstandard names or locations.</p>
663
664   
665   <dl>
666     <dt><code>CC</code></dt>
667     <dd>Define the C compiler command to be used for compilation.</dd>
668
669     <dt><code>CFLAGS</code></dt>
670     <dd>Set C compiler flags you want to use for compilation.</dd>
671
672     <dt><code>CPP</code></dt>
673     <dd>Define the C preprocessor command to be used.</dd>
674
675     <dt><code>CPPFLAGS</code></dt>
676     <dd>Set C/C++ preprocessor flags, e.g. <code>-I<var>includedir</var></code>
677       if you have headers in a nonstandard directory <var>includedir</var>.</dd>
678
679     <dt><code>LDFLAGS</code></dt>
680     <dd>Set linker flags, e.g. <code>-L<var>libdir</var></code> if you have
681       libraries in a nonstandard directory <var>libdir</var>.</dd>
682   </dl>
683 </div></div>
684 <div class="bottomlang">
685 <p><span>Available Languages: </span><a href="../en/programs/configure.html" title="English">&nbsp;en&nbsp;</a> |
686 <a href="../ko/programs/configure.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
687 <a href="../tr/programs/configure.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
688 </div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Comments</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
689 <script type="text/javascript"><!--//--><![CDATA[//><!--
690 var comments_shortname = 'httpd';
691 var comments_identifier = 'http://httpd.apache.org/docs/trunk/programs/configure.html';
692 (function(w, d) {
693     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
694         d.write('<div id="comments_thread"><\/div>');
695         var s = d.createElement('script');
696         s.type = 'text/javascript';
697         s.async = true;
698         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
699         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
700     }
701     else {
702         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
703     }
704 })(window, document);
705 //--><!]]></script></div><div id="footer">
706 <p class="apache">Copyright 2012 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
707 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
708 if (typeof(prettyPrint) !== 'undefined') {
709     prettyPrint();
710 }
711 //--><!]]></script>
712 </body></html>