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 2003/03/10 21:32:31 UTC

cvs commit: apr/docs win32_builds.html

wrowe       2003/03/10 12:32:29

  Modified:    .        CHANGES
  Added:       docs     win32_builds.html
  Log:
    A very fast pass through the new debugging symbols and top level projects.
    Needs *much* more work.
  
  Revision  Changes    Path
  1.385     +2 -4      apr/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/apr/CHANGES,v
  retrieving revision 1.384
  retrieving revision 1.385
  diff -u -r1.384 -r1.385
  --- CHANGES	10 Mar 2003 18:17:14 -0000	1.384
  +++ CHANGES	10 Mar 2003 20:32:28 -0000	1.385
  @@ -30,10 +30,8 @@
     *) Introduce Release mode debugging symbols for Win32 builds of apr.
        All library builds gain /Zi for debug symbols (which are discarded
        at link time if some flavor of the /debug flag isn't passed to link)
  -     and .dll builds gain both .pdb and .dbg files (older debuggers and
  -     Dr. Watson-type utilities on WinNT or Win9x don't support the newer 
  -     .pdb symbol files.)  Documentation on how-to-use these symbol files
  -     will be forthcoming.  [Allen Edwards, William Rowe]
  +     and .dll builds gain .pdb symbols.  Documentation on how-to-use these 
  +     symbols will be forthcoming.  [Allen Edwards, William Rowe]
   
     *) Add two new proc attributes to improve diagnostics for 
        apr_proc_create() failures on platforms where fork()+exec() is used.
  
  
  
  1.1                  apr/docs/win32_builds.html
  
  Index: win32_builds.html
  ===================================================================
  <HTML>
  <HEAD><TITLE>APR Win32 Builds and Debugging</TITLE></HEAD>
  <BODY>
  <h1>APR Win32 Builds and Debugging</h1>
  
  <h2>Configuration and Flavors</h2>
  
  <p>The Win32 APR Developer Studio projects consist of</p>
  
  <dl>
    <dt>apr/apr.dsp</dt>
  
      <dd>Builds the static apr.lib library (-D APR_DECLARE_STATIC)</dd>
    <dt>apr/libapr.dsp</dt>
  
      <dd>Builds the dynamic libapr.dll library (no define required)</dd>
    <dt>apr-util/aprutil.dsp</dt>
  
      <dd>Builds the static aprutil.lib library (-D APU_DECLARE_STATIC)</dd>
    <dt>apr-util/libaprutil.dsp</dt>
  
      <dd>Builds the dynamic libaprutil.dll library (no define required)</dd>
    <dt>apr-iconv/apriconv.dsp</dt>
  
      <dd>Builds the static apriconv.lib library (-D API_DECLARE_STATIC)</dd>
    <dt>apr-iconv/libapriconv.dsp</dt>
  
      <dd>Builds the dynamic libapriconv.dll library (no define required)</dd>
  </dl>
  
  <p>In order to prepare to use one of the <em>static</em> libraries above, 
     your application must be compiled with the define shown above, so that the
     correct linkage is created.  The APR authors intended the use of dynamic
     libraries by default, so application authors do not need any special
     defines in order to link to the dynamic library flavors.</p>
  
  <p>In order to build APR, you must use the proper dependencies.  A good
     example of those dependencies is given in the apr-util/aprutil.dsw
     Developer Studio workspace.  You can borrow the parts of that structure
     your application needs, that workspace defines both the dynamic and static
     library dependencies.</p>
  
  <p>The APR libraries (dynamic and static) are compiled with debugging symbols
,
     even in Release builds.  The dynamic library symbols are always usable,
     simply keep the correspond .pdb file in the same path as the library .dll.
     (E.g. both libapr.dll and libapr.pdb should be copied to the same path.)</p>
  
  <p>The static symbols will only be fully usable if your application does <em>not<em>
     link with the /pdbtype:sept flag!  At the time your application links to
     an APR library, the corresponding _src.pdb file should exist in the original
     path the library was built, or it may be sufficient to keep the _src.pdb file
     in the same path as the library file.  (E.g. apr.lib and apr_src.pdb should
     reside together in your lib directory.)  The later option is unconfirmed.</p>
  
  <p>In order to keep the symbols compiled into the static library, your application
     must use the linker's /debug flag.  If you do not want the application to be
     debuggable with its corresponding .pdb file, omit the /debug flag and all debug
     symbolic information is discarded.  Note that your application can only be
     debugged with the corresponding .pdb file created by the linker, unless you use
     /debugtype:coff or /debugtype:both in your link options.</p>
  
  </BODY>
  </HTML>