You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by wr...@apache.org on 2001/09/23 01:07:13 UTC
cvs commit: apr-site compiling_win32.html index.html
wrowe 01/09/22 16:07:13
Modified: . index.html
Added: . compiling_win32.html
Log:
Something here is better than nothing, third question in a month about
this in private mails. Unix hacks, where is yours :-?
Revision Changes Path
1.15 +14 -1 apr-site/index.html
Index: index.html
===================================================================
RCS file: /home/cvs/apr-site/index.html,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- index.html 2001/09/09 17:14:06 1.14
+++ index.html 2001/09/22 23:07:13 1.15
@@ -38,12 +38,25 @@
</ul>
</p>
- <h3>How to contribute</h3>
+ <h3>How to build</h3>
+ <p>
+ This section, in general, needs alot of work. We hope it starts
+ you in the right direction, and will offer more info soon as we
+ begin to package APR as a seperate distribution, with it's own
+ release schema.
+ </p>
<p>
<a href="anoncvs.txt">Getting</a> the source code.
</p>
<p>
<a href="http://cvs.apache.org/snapshots/apr/">Download</a> a tarball of the latest code snapshot.
+ </p>
+ <p>
+ <a href="compiling_win32.html">Compiling</a> on Win32. More help
+ and details about other platforms coming soon!
+ </p>
+
+ <h3>How to contribute</h3>
<p>
See the <a href="guidelines.html">project's guidelines</a> for
more information about how the project works.
1.1 apr-site/compiling_win32.html
Index: compiling_win32.html
===================================================================
<!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"
>
<!--#include virtual="header.html" -->
<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:
<pre>
"c:\Program Files\DevStudio\VC\Bin\vcvars32.bat"
</pre>
<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> that 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,
we are afraid they change the link to often to cite.</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.<br>
Note that 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. Add the path for awk.exe to this list, as needed.</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. Simply use one of the following commands to compiled the
static or dynamic libraries, respectively, on Visual C++ 6.0 or later:</p>
<pre>
msdev aprutil.dsw /MAKE \
"apriconv - Win32 Release" \
"apr - Win32 Release" \
"libapr - Win32 Release" \
"gen_uri_delims - Win32 Release" \
"xml - Win32 Release" \
"aprutil - Win32 Release" \
msdev aprutil.dsw /MAKE \
"libapr - Win32 Release" \
"libapriconv - Win32 Release" \
"gen_uri_delims - Win32 Release" \
"xml - 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.</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):
<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>
<!--#include virtual="footer.html" -->
</body>
</body>
Re: cvs commit: apr-site compiling_win32.html index.html
Posted by Ian Holsman <ia...@cnet.com>.
Cliff Woolley wrote:
> On 22 Sep 2001 wrowe@apache.org wrote:
>
>
>>wrowe 01/09/22 16:07:13
>>
>> Modified: . index.html
>> Added: . compiling_win32.html
>> Log:
>> Something here is better than nothing, third question in a month about
>> this in private mails.
>>
>
> Thanks! That's very helpful.
>
>
>> Unix hacks, where is yours :-?
>>
>
> Ours isn't that hard. ;-) Seriously, though, what would go in it? If
> anyone can think of some FAQ's for building on Unix, I'd be happy to
> compile them...
./buildconf
./configure
make
make install
?
;-)
>
> --Cliff
>
> --------------------------------------------------------------
> Cliff Woolley
> cliffwoolley@yahoo.com
> Charlottesville, VA
>
>
Re: cvs commit: apr-site compiling_win32.html index.html
Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
From: "Cliff Woolley" <cl...@yahoo.com>
Sent: Saturday, September 22, 2001 7:37 PM
> > Unix hacks, where is yours :-?
>
> Ours isn't that hard. ;-) Seriously, though, what would go in it? If
> anyone can think of some FAQ's for building on Unix, I'd be happy to
> compile them...
Here's the issue (that Ryan raised last week) ... we aren't ready to be a
standalone library. Win32 hackers trying to tie APR closely to their app
(not a preinstalled shared binary) needed some guidance yesterday, since
the static lib question is thorny.
If you want to add a placeholder, that would do nicely.
Bill
Re: cvs commit: apr-site compiling_win32.html index.html
Posted by Cliff Woolley <cl...@yahoo.com>.
On 22 Sep 2001 wrowe@apache.org wrote:
> wrowe 01/09/22 16:07:13
>
> Modified: . index.html
> Added: . compiling_win32.html
> Log:
> Something here is better than nothing, third question in a month about
> this in private mails.
Thanks! That's very helpful.
> Unix hacks, where is yours :-?
Ours isn't that hard. ;-) Seriously, though, what would go in it? If
anyone can think of some FAQ's for building on Unix, I'd be happy to
compile them...
--Cliff
--------------------------------------------------------------
Cliff Woolley
cliffwoolley@yahoo.com
Charlottesville, VA