0.6.1
by Andreas Barth
Import upstream version 2.2.3 |
1 |
Apache HTTP Server |
2 |
||
3 |
Platform specific notes: |
|
4 |
------------------------
|
|
5 |
||
6 |
================
|
|
7 |
Darwin (OS X): |
|
8 |
Apache 2 relies heavily on the use of autoconf and libtool to |
|
9 |
provide a build environment. Darwin provides these tools as part |
|
10 |
of the Developers Tools package. Under Darwin, however, GNUlibtool |
|
11 |
is installed as 'glibtool' to avoid conflicting with the Darwin |
|
12 |
'libtool' program. Apache 2 knows about this so that's not a |
|
13 |
problem. |
|
14 |
||
15 |
As of OS X 10.2 (Jaguar), the bundled versions work perfectly. Partly |
|
16 |
this is due to the fact that /bin/sh is now 'bash' and not 'zsh' as |
|
17 |
well as the fact that the bundled versions are up-to-date: |
|
18 |
autoconf 2.52 and (g)libtool 1.4.2. |
|
19 |
||
20 |
Earlier versions of OS X are not so fortunate, and the bundled tools |
|
21 |
are not only older versions, but also, for the most part, do not work |
|
22 |
well. If you are interested in developing under Darwin, we |
|
23 |
recommend that you obtain and install replacement versions of what |
|
24 |
are normally installed on Darwin (and OS X, as of v10.1.5). If |
|
25 |
you build your own versions of autoconf 2.52 and libtool 1.4.2, be |
|
26 |
aware that there are some Darwin specific patches to the official |
|
27 |
code that still must be applied for them to fully work. A useful |
|
28 |
page to check out is: |
|
29 |
||
30 |
http://fink.sourceforge.net/doc/porting/libtool.php |
|
31 |
||
32 |
Pier Fumagalli also provides pre-built Darwin packages of the |
|
33 |
patched autoconf and libtool suites, available at: |
|
34 |
||
35 |
http://www.apache.org/~pier/macosx/ |
|
36 |
||
37 |
You will note that GNU libtool should actually be installed as |
|
38 |
glibtool, to avoid conflict with a Darwin program of the same |
|
39 |
name. Pier's packages have this change already. All files are |
|
40 |
installed under /usr/local/ so to use these versions, and be sure |
|
41 |
that /usr/local/bin is earlier in your PATH. |
|
42 |
||
43 |
There have been some reports that autoconf 2.52 prevents Apache's |
|
44 |
build system from correctly handling passing multi-value envvars |
|
45 |
to the build system (eg: CFLAGS="-g -O3" ./configure), causing |
|
46 |
errors. Use of bash does not seem to help in this situation. If |
|
47 |
this affects you, downgrading to autoconf 2.13 (which is installed |
|
48 |
on Darwin) will help. |
|
49 |
||
50 |
With Leopard (at least up to 10.5.2), when running configure |
|
0.13.4
by Chuck Short
Import upstream version 2.2.9 |
51 |
you will likely see errors such as: |
52 |
||
53 |
rm: conftest.dSYM: is a directory |
|
54 |
||
55 |
This is a known issue and will be fixed in a later version of the |
|
56 |
autoconf suite. These errors can be safely ignored. |
|
57 |
||
58 |
With Darwin 10, the default C compiler (gcc) will try to build |
|
0.13.9
by Stefan Fritsch
Import upstream version 2.2.15 |
59 |
multi-architecture bundles. This causes problems with APR, which |
60 |
needs to know various data-type sizes which it assumes are universal |
|
61 |
for platforms. Until this is fully fixed, we recommend using the |
|
62 |
'-arch i386' gcc option when building both Apache and APR. |
|
63 |
||
64 |
==========
|
|
0.6.1
by Andreas Barth
Import upstream version 2.2.3 |
65 |
FreeBSD: |
66 |
autoconf 2.52 creates scripts that are incompatible with the Posix |
|
67 |
shell implementation (/bin/sh) on FreeBSD. Be sure to use v2.13 |
|
68 |
of autoconf. |
|
69 |
||
70 |
Threaded MPMs are not supported on FreeBSD 4.x. Current releases of |
|
71 |
FreeBSD 5.x (5.2 or later) support threaded MPMs correctly. You must pass |
|
72 |
'--enable-threads=yes' to APR's configure in order to enable threads. |
|
73 |
Additionally, you must use libthr or libkse via libmap.conf as the default |
|
74 |
libc_r is still broken as of this writing. Please consult the man page for |
|
75 |
libmap.conf for more details about configuring libthr or libkse. |
|
76 |
================
|
|
77 |
HP-UX: |
|
78 |
The dlopen() system call in HP-UX has problems when loading/unloading |
|
79 |
C++ modules. The problem can be resolved by using shl_load() instead |
|
80 |
of dlopen(). This is fixed in the Apache 2.0.44 release. |
|
81 |
To enable loading of C++ modules, the httpd binary has to be linked with |
|
82 |
the following libraries : |
|
83 |
||
84 |
HP-UX (11.0 / 11i): |
|
85 |
When using shl_load : "cpprt0_stub.s -lcl" |
|
86 |
When using dlopen : "cpprt0_stub.s -lcl -lCsup" |
|
87 |
||
88 |
HP-UX (11i version 1.5 and greater): |
|
89 |
When using dlopen/shl_load : "cpprt0_stub.s -lcl -lunwind" |
|
90 |
||
91 |
The cpprt0_stub.s can be downloaded from the web site : |
|
92 |
http://h21007.www2.hp.com/hpux-devtools/CXX/hpux-devtools.0107/0083.html |
|
93 |
||
94 |
Compile cpprt0_stub.s with the PIC option |
|
95 |
cc -c +z cpprt0_stub.s |
|
96 |
- OR - |
|
97 |
gcc -c -fPIC cpprt0_stub.s |
|
98 |
================
|
|
99 |
AIX, using the vendor C compiler with optimization: |
|
100 |
There is an issue with compiling server/core.c with optimization enabled |
|
101 |
which has been seen with C for AIX 5.0.2.3 and above. (5.0.2.0, 5.0.2.1, |
|
102 |
and 5.0.2.2 have an additional problem with Apache 2.0.x, so either upgrade |
|
103 |
the compiler or don't use optimization in order to avoid it.) |
|
104 |
||
105 |
cc_r works fine with -O2 but xlc_r does not. In order to use xlc_r with |
|
106 |
-O2, apply the patch at |
|
107 |
||
108 |
http://www.apache.org/dist/httpd/patches/apply_to_2.0.49/aix_xlc_optimization.patch |
|
109 |
||
110 |
(That patch works with many recent levels of Apache 2+.) |
|
111 |
||
112 |
================
|
|
0.8.1
by Stefan Fritsch
Import upstream version 2.2.4 |
113 |
Solaris: |
114 |
||
115 |
On Solaris, better performance may be achieved by using the Sun Studio |
|
116 |
compiler instead of gcc. As of version 11, it is now free (registration |
|
117 |
required). Download the compiler from: |
|
118 |
||
119 |
http://developers.sun.com/prodtech/cc/downloads/index.jsp |
|
120 |
||
121 |
If you use Sun Studio, the following compiler flags (CFLAGS) are |
|
122 |
recommended: |
|
123 |
||
124 |
-XO4 -xchip=generic |
|
125 |
||
126 |