wrowe 2004/08/28 18:57:30
Modified: docs compiling_win32.html
Log:
tidy this mess.
Revision Changes Path
1.3 +156 -171 apr-site/docs/compiling_win32.html
Index: compiling_win32.html
===================================================================
RCS file: /home/cvs/apr-site/docs/compiling_win32.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- compiling_win32.html 29 Aug 2004 01:56:30 -0000 1.2
+++ compiling_win32.html 29 Aug 2004 01:57:30 -0000 1.3
@@ -1,187 +1,172 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-<title>Compiling APR for Microsoft Windows</title>
-</head>
-
-<!-- Background white, links blue (unvisited), navy (visited), red (active)
-->
-<body
- bgcolor="#FFFFFF"
- text="#000000"
- link="#0000FF"
- vlink="#000080"
- alink="#FF0000"
->
-
-<h1 align="center">Compiling APR for Microsoft Windows</h1>
-
-<h3><a name="requirements">Requirements</a></h3>
-
-<p>Compiling apr, apr-iconv and/or apr-util requires the following
environment
- to be properly installed;
-
-<ul>
-
-<li>Microsoft Visual C++ 5.0 or higher.<br><br>APR can be built using
- the command line tools, or from within the Visual Studio IDE Workbench.
- the command line tools are configured with the vcvars32 batch file:
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta name="generator"
+ content="HTML Tidy for Linux/x86 (vers 1st November 2002), see
www.w3.org" />
+ <title>Compiling APR for Microsoft Windows</title>
+ </head>
+ <!-- Background white, links blue (unvisited), navy (visited), red
(active) -->
+ <body bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#000080"
+ alink="#FF0000">
+ <h1 align="center">Compiling APR for Microsoft Windows</h1>
+ <h3><a id="requirements" name="requirements">Requirements</a></h3>
+ <p>Compiling apr, apr-iconv and/or apr-util requires the following
+ environment to be properly installed;</p>
+ <ul>
+ <li>
+ Microsoft Visual C++ 5.0 or higher.<br />
+ <br />
+ APR can be built using the command line tools, or from within the
+ Visual Studio IDE Workbench. the command line tools are configured
+ with the vcvars32 batch file:
<pre>
"c:\Program Files\DevStudio\VC\Bin\vcvars32.bat"
</pre>
- <strong>Note:</strong> only the .zip distribution file can be used for
command
- line builds under Visual C++ 5.0, the .tar.gz files don't contain
exported
- .mak versions of the .dsp project files, and Visual C++ 6.0 is the first
- version which is capable of .dsp based builds from the command line.</p>
-
-<li>The Windows Platform SDK.<br><br>Visual C++ 5.0 need the updated
Microsoft
- Windows Platform SDK to enable some APR features. For command line
- builds, the Platform SDK environment is prepared by the setenv batch
file:
+ <strong>Note:</strong> only the .zip distribution file can be used
+ for command line builds under Visual C++ 5.0, the .tar.gz files
+ don't contain exported .mak versions of the .dsp project files, and
+ Visual C++ 6.0 is the first version which is capable of .dsp based
+ builds from the command line.<br />
+ <br />
+ </li>
+ <li>
+ The Windows Platform SDK.<br />
+ <br />
+ Visual C++ 5.0 need the updated Microsoft Windows Platform SDK to
+ enable some APR features. For command line builds, the Platform SDK
+ environment is prepared by the setenv batch file:
<pre>
"c:\Program Files\Platform SDK\setenv.bat"
</pre>
- The Platform SDK files distributed with Visual C++ 6.0 and later are
- sufficient, so those users may skip this requirement.<br><br>
-
- <strong>Note:</strong> The Windows Platform SDK update is required
- to enable all supported features. Without a recent update, APR will
- issue warnings under MSVC++ 5.0 or fail to build entirely. Look for
- the update on Microsoft's website. (Unfortunately they change the link
- too often to cite here.)</p>
-
-<li>The awk utility (awk, gawk or similar.)<br><br>
- To build APR, several files are modified using the awk utility.
- awk was chosen since it is a very small download (compared with Perl
- or WSH/VB) and accomplishes the task. Brian Kernighan's
- <a href="http://cm.bell-labs.com/cm/cs/who/bwk/"
- >http://cm.bell-labs.com/cm/cs/who/bwk/</a> site has a compiled native
- Win32 binary, <a href="http://cm.bell-labs.com/cm/cs/who/bwk/awk95.exe"
- >http://cm.bell-labs.com/cm/cs/who/bwk/awk95.exe</a>
- which you should name awk.exe rather than awk95.exe.</p>
-
- <strong>Note:</strong> The Developer Studio IDE will only find awk.exe
- from the <u>T</u>ools menu <u>O</u>ptions... Directories settings for
the
- Executable files, or the system path. Add the path for awk.exe
- as needed.</p>
-
- <strong>Note:</strong> The .zip distributions of apr contain the
- awk-generated files, while the .tar (.gz & .Z) distributions do not.</p>
-
-</ul>
-
-<h3><a name="commandline">Command-Line Build</a></h3>
-
-<p>First, unpack the APR distribution into an appropriate
- directory. The directory will contain the apr, apr-iconv and apr-util
- directories. Open a command-line prompt and cd to the apr-util
- directory.</p>
-
-<p>If you obtained the .zip distribution, the files have \r\n (CR/LF) line
- endings. The .tar (.gz & .Z) distribtions do not, the contents must be
- unpacked as DOS Text, otherwise use the following command from the working
- directory containing apr, apr-iconv and apr-uilt to convert the files to
text:
+ The Platform SDK files distributed with Visual C++ 6.0 and later
+ are sufficient, so those users may skip this requirement.<br />
+ <br />
+ <strong>Note:</strong> The Windows Platform SDK update is required
+ to enable all supported features. Without a recent update, APR will
+ issue warnings under MSVC++ 5.0 or fail to build entirely. Look for
+ the update on Microsoft's website. (Unfortunately they change the
+ link too often to cite here.)<br />
+ <br />
+ </li>
+ <li>The awk utility (awk, gawk or similar.)<br />
+ <br />
+ To build APR, several files are modified using the awk utility. awk
+ was chosen since it is a very small download (compared with Perl or
+ WSH/VB) and accomplishes the task. Brian Kernighan's <a
+
href="http://cm.bell-labs.com/cm/cs/who/bwk/">http://cm.bell-labs.com/cm/cs/who/bwk/</a>
+ site has a compiled native Win32 binary, <a
+
href="http://cm.bell-labs.com/cm/cs/who/bwk/awk95.exe">http://cm.bell-labs.com/cm/cs/who/bwk/awk95.exe</a>
+ which you should name awk.exe rather than awk95.exe.<br />
+ <br />
+ <strong>Note:</strong> The Developer Studio IDE will only find
+ awk.exe from the <u>T</u>ools menu <u>O</u>ptions... Directories
+ settings for the Executable files, or the system path. Add the path
+ for awk.exe as needed.<br />
+ <br />
+ <strong>Note:</strong> The .zip distributions of apr contain the
+ awk-generated files, while the .tar (.gz & .Z) distributions do
+ not.<br />
+ <br />
+ </li>
+ </ul>
+ <h3><a id="commandline" name="commandline">Command-Line Build</a></h3>
+ <p>First, unpack the APR distribution into an appropriate directory.
+ The directory will contain the apr, apr-iconv and apr-util directories.
+ Open a command-line prompt and cd to the apr-util directory.</p>
+ <p>If you obtained the .zip distribution, the files have \r\n (CR/LF)
+ line endings. The .tar (.gz & .Z) distribtions do not, the contents
+ must be unpacked as DOS Text, otherwise use the following command from
+ the working directory containing apr, apr-iconv and apr-uilt to convert
+ the files to text:</p>
<pre>
perl apr\build\lineends.pl apr apr-iconv apr-util
</pre>
-<p>Then, from the apr-util working directory, simply use one of the
following commands to compile the static or dynamic libraries, respectively, on
-Visual C++ 6.0 or later:</p>
+ <p>Then, from the apr-util working directory, simply use one of the
+ following commands to compile the static or dynamic libraries,
+ respectively, on Visual C++ 6.0 or later:</p>
<pre>
- msdev aprutil.dsw /MAKE \
- "apr - Win32 Release" \
- "apriconv - Win32 Release" \
- "aprutil - Win32 Release"
-
- msdev aprutil.dsw /MAKE \
- "libapr - Win32 Release" \
- "libapriconv - Win32 Release" \
- "libaprutil - Win32 Release"
+ msdev aprutil.dsw /MAKE \
+ "apr - Win32 Release" \
+ "apriconv - Win32 Release" \
+ "aprutil - Win32 Release"
+ msdev aprutil.dsw /MAKE \
+ "libapr - Win32 Release" \
+ "libapriconv - Win32 Release" \
+ "libaprutil - Win32 Release"
</pre>
-
-<p>Either command will compile APR. The latter will build the libraries as
- .dll dynamic shared libraries, rather than static libraries.</p>
-
-<p>Replace <code>Release</code> with <code>Debug</code> to include debugging
- information in the resulting files, making it easier to find bugs and
- track down problems. Note that corresponding debugging .pdb files are
- created for the <code>Release</code> builds, but due to optimizations
- they are sometimes less than helpful.</p>
-
-<h3><a name="workspace">Developer Studio Workspace IDE Build</a></h3>
-
-<p>APR can also be compiled using VC++'s VisualStudio development
- environment. To simplify this process, a complete VisualStudio workspace,
- apr-util/aprutil.dsw, is provided. This workspace exposes the entire
list
- of working .dsp projects that are required for the complete APR binary
- release. It includes dependencies between the projects to assure that
- they are built in the appropriate order.</p>
-
-<p>Open the apr-util/aprutil.dsw workspace, and choose either aprutil or
- libaprutil (for static or dynamic libraries) with the Release or Debug
- build as the Active Project. aprutil.dsw causes all related projects to
- be built.</p>
-
-<p>The apr test environment can be compiled using VC++'s VisualStudio
- development environment with the apr/test/aprtest.dsw project.
- This workspace exposes the apr/apr.dsp static library and the
- apr/test/aprtest.dsp projects that allow the developer to assemble the
- entire test application suite.</p>
-
-<p>The .dsp project files are distributed in Visual C++ 6.0 format. Visual
- C++ 5.0 (97) will recognize them. To quickly prepare the .dsp files in
- the native Visual Studio 5.0 (97) format, you can run this command
- from the top-level apr directory (above apr, apr-util and apr-iconv):
+ <p>Either command will compile APR. The latter will build the libraries
+ as .dll dynamic shared libraries, rather than static libraries.</p>
+ <p>Replace <code>Release</code> with <code>Debug</code> to include
+ debugging information in the resulting files, making it easier to find
+ bugs and track down problems. Note that corresponding debugging .pdb
+ files are created for the <code>Release</code> builds, but due to
+ optimizations they are sometimes less than helpful.</p>
+ <h3><a id="workspace" name="workspace">Developer Studio Workspace IDE
+ Build</a></h3>
+ <p>APR can also be compiled using VC++'s VisualStudio development
+ environment. To simplify this process, a complete VisualStudio
+ workspace, apr-util/aprutil.dsw, is provided. This workspace exposes
+ the entire list of working .dsp projects that are required for the
+ complete APR binary release. It includes dependencies between the
+ projects to assure that they are built in the appropriate order.</p>
+ <p>Open the apr-util/aprutil.dsw workspace, and choose either aprutil
+ or libaprutil (for static or dynamic libraries) with the Release or
+ Debug build as the Active Project. aprutil.dsw causes all related
+ projects to be built.</p>
+ <p>The apr test environment can be compiled using VC++'s VisualStudio
+ development environment with the apr/test/aprtest.dsw project. This
+ workspace exposes the apr/apr.dsp static library and the
+ apr/test/aprtest.dsp projects that allow the developer to assemble the
+ entire test application suite.</p>
+ <p>The .dsp project files are distributed in Visual C++ 6.0 format.
+ Visual C++ 5.0 (97) will recognize them. To quickly prepare the .dsp
+ files in the native Visual Studio 5.0 (97) format, you can run this
+ command from the top-level apr directory (above apr, apr-util and
+ apr-iconv):</p>
<pre>
perl apr\build\cvtdsp.pl -5
</pre>
- You must type this command from the <em>top level</em> directory of the
apr
- source tree. Every VC6 .dsp project file within the current directory
and
- below will be listed as it is converted. If you contribute back a patch
that
- revises project files, please convert them back with the the -6 option
instead
- of -5, which returns the project files to Visual Studio 6.0 format.</p>
-
-<h3><a name="integrating">Integrating the Library</a></h3>
-
-<h3><a name="components">Library Components</a></h3>
-
-<p>The apr-util/aprutil.dsw workspace builds the .dsp projects of the
- Apache server listed with dependent projects preceeding their
- dependencies:</p>
-
-<ol>
- <li><code>apr-util\aprutil.dsp</code>
- <li><code>apr-util\libaprutil.dsp</code>
- <li><code>apr-util\uri\gen_uri_delims.dsp</code>
- <li><code>apr-util\xml\expat\lib\xml.dsp</code>
- <li><code>apr-iconv\apriconv.dsp</code>
- <li><code>apr-iconv\libapriconv.dsp</code>
- <li><code>apr\apr.dsp</code>
- <li><code>apr\libapr.dsp</code>
-</ol>
-
-<p>The libXXX projects create .dll targets, dynamic shared libraries.
- Their non-libXXX counterparts create static .lib targets.</p>
-
-<p>To compile code for the libraries, the consuming compiliation must
- include the apr/include and apr-util/include directories in their
- include file search paths. To target the static .lib versions of
- the library, the consuming compiliation must define the macros
- APR_DECLARE_STATIC and APU_DECLARE_STATIC. This prevents the apr
- and apr-util symbols from being tagged as __declspec(dllimport),
- eliminating compiliation warnings and speeding up execution.</p>
-
-<p><strong>Warning about building Apache from the development
tree</strong></p>
-
-<p>Only the .dsp files are maintained within CVS. Win32 .mak files
- are NOT maintained in CVS, due to the tremendous waste of
- reviewer's time. Therefore, you cannot rely on the NMAKE commands
- above to build revised .dsp project files unless you then export
- all .mak files yourself from the project. This is unnecessary if
- you build from within the Microsoft DeveloperStudio environment, or
- use Visual C++ 6.0 or greater.</p>
-
-</body>
-</html>
-. This is unnecessary if you build from
- within the Microsoft DeveloperStudio environment, or use Visual C++ 6.0
or
- greater.</p>
+ You must type this command from the <em>top level</em> directory of the
+ apr source tree. Every VC6 .dsp project file within the current
+ directory and below will be listed as it is converted. If you
+ contribute back a patch that revises project files, please convert them
+ back with the the -6 option instead of -5, which returns the project
+ files to Visual Studio 6.0 format.<br />
+ <br />
+
+ <h3><a id="integrating" name="integrating">Integrating the
+ Library</a></h3>
+ <h3><a id="components" name="components">Library Components</a></h3>
+ <p>The apr-util/aprutil.dsw workspace builds the .dsp projects of the
+ Apache server listed with dependent projects preceeding their
+ dependencies:</p>
+ <ol>
+ <li><code>apr-util\aprutil.dsp</code></li>
+ <li><code>apr-util\libaprutil.dsp</code></li>
+ <li><code>apr-util\uri\gen_uri_delims.dsp</code></li>
+ <li><code>apr-util\xml\expat\lib\xml.dsp</code></li>
+ <li><code>apr-iconv\apriconv.dsp</code></li>
+ <li><code>apr-iconv\libapriconv.dsp</code></li>
+ <li><code>apr\apr.dsp</code></li>
+ <li><code>apr\libapr.dsp</code></li>
+ </ol>
+ <p>The libXXX projects create .dll targets, dynamic shared libraries.
+ Their non-libXXX counterparts create static .lib targets.</p>
+ <p>To compile code for the libraries, the consuming compiliation must
+ include the apr/include and apr-util/include directories in their
+ include file search paths. To target the static .lib versions of the
+ library, the consuming compiliation must define the macros
+ APR_DECLARE_STATIC and APU_DECLARE_STATIC. This prevents the apr and
+ apr-util symbols from being tagged as __declspec(dllimport),
+ eliminating compiliation warnings and speeding up execution.</p>
+ <p><strong>Warning about building Apache from the development
+ tree</strong></p>
+ <p>Only the .dsp files are maintained within CVS. Win32 .mak files are
+ NOT maintained in CVS, due to the tremendous waste of reviewer's time.
+ Therefore, you cannot rely on the NMAKE commands above to build revised
+ .dsp project files unless you then export all .mak files yourself from
+ the project. This is unnecessary if you build from within the Microsoft
+ DeveloperStudio environment, or use Visual C++ 6.0 or greater.</p>
</body>
</html>