<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>2.2 Compiling</title> <META NAME="description" CONTENT="2.2 Compiling"> <META NAME="keywords" CONTENT="modpython"> <META NAME="resource-type" CONTENT="document"> <META NAME="distribution" CONTENT="global"> <link rel="STYLESHEET" href="modpython.css"> <link rel="first" href="modpython.html"> <link rel="contents" href="contents.html" title="Contents"> <link rel="index" href="genindex.html" title="Index"> <LINK REL="next" href="inst-installing.html"> <LINK REL="previous" href="inst-prerequisites.html"> <LINK REL="up" href="installation.html"> <LINK REL="next" href="inst-configure.html"> </head> <body> <DIV CLASS="navigation"> <table align="center" width="100%" cellpadding="0" cellspacing="2"> <tr> <td><A href="inst-prerequisites.html"><img src="icons/previous.png" border="0" height="32" alt="Previous Page" width="32"></A></td> <td><A href="installation.html"><img src="icons/up.png" border="0" height="32" alt="Up One Level" width="32"></A></td> <td><A href="inst-configure.html"><img src="icons/next.png" border="0" height="32" alt="Next Page" width="32"></A></td> <td align="center" width="100%">Mod_python Manual</td> <td><A href="contents.html"><img src="icons/contents.png" border="0" height="32" alt="Contents" width="32"></A></td> <td><img src="icons/blank.png" border="0" height="32" alt="" width="32"></td> <td><A href="genindex.html"><img src="icons/index.png" border="0" height="32" alt="Index" width="32"></A></td> </tr></table> <b class="navlabel">Previous:</b> <a class="sectref" href="inst-prerequisites.html">2.1 Prerequisites</A> <b class="navlabel">Up:</b> <a class="sectref" href="installation.html">2. Installation</A> <b class="navlabel">Next:</b> <a class="sectref" href="inst-configure.html">2.2.1 Running ./configure</A> <br><hr> </DIV> <!--End of Navigation Panel--> <H1><A NAME="SECTION004200000000000000000"> </A> <BR> 2.2 Compiling </H1> <a name="l2h-2"> </a> <P> There are two ways in which modules can be compiled and linked to Apache - statically, or as a DSO (Dynamic Shared Object). <P> <i class="dfn">DSO</i> is a more popular approach nowadays and is the recommended one for mod_python. The module gets compiled as a shared library which is dynamically loaded by the server at run time. <P> The advantage of DSO is that a module can be installed without recompiling Apache and used as needed. A more detailed description of the Apache DSO mechanism is available at <a class="url" href="http://httpd.apache.org/docs-2.0/dso.html">http://httpd.apache.org/docs-2.0/dso.html</a>. <P> <i>At this time only DSO is supported by mod_python.</i> <P> <i class="dfn">Static</i> linking is an older approach. With dynamic linking available on most platforms it is used less and less. The main drawback is that it entails recompiling Apache, which in many instances is not a favorable option. <P> <p><hr> <!--Table of Child-Links--> <A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></a> <UL CLASS="ChildLinks"> <LI><A href="inst-configure.html">2.2.1 Running ./configure</a> <LI><A href="inst-make.html">2.2.2 Running make</a> </ul> <!--End of Table of Child-Links--> <DIV CLASS="navigation"> <p><hr> <table align="center" width="100%" cellpadding="0" cellspacing="2"> <tr> <td><A href="inst-prerequisites.html"><img src="icons/previous.png" border="0" height="32" alt="Previous Page" width="32"></A></td> <td><A href="installation.html"><img src="icons/up.png" border="0" height="32" alt="Up One Level" width="32"></A></td> <td><A href="inst-configure.html"><img src="icons/next.png" border="0" height="32" alt="Next Page" width="32"></A></td> <td align="center" width="100%">Mod_python Manual</td> <td><A href="contents.html"><img src="icons/contents.png" border="0" height="32" alt="Contents" width="32"></A></td> <td><img src="icons/blank.png" border="0" height="32" alt="" width="32"></td> <td><A href="genindex.html"><img src="icons/index.png" border="0" height="32" alt="Index" width="32"></A></td> </tr></table> <b class="navlabel">Previous:</b> <a class="sectref" href="inst-prerequisites.html">2.1 Prerequisites</A> <b class="navlabel">Up:</b> <a class="sectref" href="installation.html">2. Installation</A> <b class="navlabel">Next:</b> <a class="sectref" href="inst-configure.html">2.2.1 Running ./configure</A> <hr> <span class="release-info">Release 3.1.0a, documentation updated on August 26, 2003.</span> </DIV> <!--End of Navigation Panel--> </BODY> </HTML>