~ubuntu-branches/ubuntu/feisty/apache2/feisty

« back to all changes in this revision

Viewing changes to srclib/apr/docs/win32_builds.html

  • Committer: Bazaar Package Importer
  • Author(s): Andreas Barth
  • Date: 2006-12-09 21:05:45 UTC
  • mfrom: (0.6.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20061209210545-h70s0xaqc2v8vqr2
Tags: 2.2.3-3.2
* Non-maintainer upload.
* 043_ajp_connection_reuse: Patch from upstream Bugzilla, fixing a critical
  issue with regard to connection reuse in mod_proxy_ajp.
  Closes: #396265

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<HTML>
 
2
<HEAD><TITLE>APR Win32 Builds and Debugging</TITLE></HEAD>
 
3
<BODY>
 
4
<h1>APR Win32 Builds and Debugging</h1>
 
5
 
 
6
<h2>Configuration and Flavors</h2>
 
7
 
 
8
<p>The Win32 APR Developer Studio projects consist of</p>
 
9
 
 
10
<dl>
 
11
  <dt>apr/apr.dsp</dt>
 
12
    <dd>Builds the static apr.lib library (-D APR_DECLARE_STATIC)</dd>
 
13
  <dt>apr/libapr.dsp</dt>
 
14
    <dd>Builds the dynamic libapr.dll library (no define required)</dd>
 
15
  <dt>apr-util/aprutil.dsp</dt>
 
16
    <dd>Builds the static aprutil.lib library (-D APU_DECLARE_STATIC)</dd>
 
17
  <dt>apr-util/libaprutil.dsp</dt>
 
18
    <dd>Builds the dynamic libaprutil.dll library (no define required)</dd>
 
19
  <dt>apr-iconv/apriconv.dsp</dt>
 
20
    <dd>Builds the static apriconv.lib library (-D API_DECLARE_STATIC)</dd>
 
21
  <dt>apr-iconv/libapriconv.dsp</dt>
 
22
    <dd>Builds the dynamic libapriconv.dll library (no define required)</dd>
 
23
</dl>
 
24
 
 
25
<p>In order to prepare to use one of the <em>static</em> libraries above, 
 
26
   your application must be compiled with the define shown above, so that the
 
27
   correct linkage is created.  The APR authors intended the use of dynamic
 
28
   libraries by default, so application authors do not need any special
 
29
   defines in order to link to the dynamic library flavors.</p>
 
30
 
 
31
<p>In order to build APR, you must use the proper dependencies.  A good
 
32
   example of those dependencies is given in the apr-util/aprutil.dsw
 
33
   Developer Studio workspace.  You can borrow the parts of that structure
 
34
   your application needs, that workspace defines both the dynamic and static
 
35
   library dependencies.</p>
 
36
 
 
37
<p>The APR libraries (dynamic and static) are compiled with debugging symbols,
 
38
   even in Release builds.  The dynamic library symbols are always usable,
 
39
   simply keep the correspond .pdb file in the same path as the library .dll.
 
40
   (E.g. both libapr.dll and libapr.pdb should be copied to the same path.)</p>
 
41
 
 
42
<p>The static symbols will only be fully usable if your application does <em>not<em>
 
43
   link with the /pdbtype:sept flag!  At the time your application links to
 
44
   an APR library, the corresponding _src.pdb file should exist in the original
 
45
   path the library was built, or it may be sufficient to keep the _src.pdb file
 
46
   in the same path as the library file.  (E.g. apr.lib and apr_src.pdb should
 
47
   reside together in your lib directory.)  The later option is unconfirmed.</p>
 
48
 
 
49
<p>In order to keep the symbols compiled into the static library, your application
 
50
   must use the linker's /debug flag.  If you do not want the application to be
 
51
   debuggable with its corresponding .pdb file, omit the /debug flag and all debug
 
52
   symbolic information is discarded.  Note that your application can only be
 
53
   debugged with the corresponding .pdb file created by the linker, unless you use
 
54
   /debugtype:coff or /debugtype:both in your link options.</p>
 
55
 
 
56
</BODY>
 
57
</HTML>