From 30d479c28c831a0d4f1fdb54a9e346b0fc176be1 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 08:23:09 +0200 Subject: Adding upstream version 1.7.2. Signed-off-by: Daniel Baumann --- docs/win32_builds.html | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 docs/win32_builds.html (limited to 'docs/win32_builds.html') diff --git a/docs/win32_builds.html b/docs/win32_builds.html new file mode 100644 index 0000000..ad57d8e --- /dev/null +++ b/docs/win32_builds.html @@ -0,0 +1,57 @@ + +APR Win32 Builds and Debugging + +

APR Win32 Builds and Debugging

+ +

Configuration and Flavors

+ +

The Win32 APR Developer Studio projects consist of

+ +
+
apr/apr.dsp
+
Builds the static apr.lib library (-D APR_DECLARE_STATIC)
+
apr/libapr.dsp
+
Builds the dynamic libapr.dll library (no define required)
+
apr-util/aprutil.dsp
+
Builds the static aprutil.lib library (-D APU_DECLARE_STATIC)
+
apr-util/libaprutil.dsp
+
Builds the dynamic libaprutil.dll library (no define required)
+
apr-iconv/apriconv.dsp
+
Builds the static apriconv.lib library (-D API_DECLARE_STATIC)
+
apr-iconv/libapriconv.dsp
+
Builds the dynamic libapriconv.dll library (no define required)
+
+ +

In order to prepare to use one of the static 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.

+ +

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.

+ +

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.)

+ +

The static symbols will only be fully usable if your application does not + 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.

+ +

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.

+ + + -- cgit v1.2.3