summaryrefslogtreecommitdiffstats
path: root/README.platforms
diff options
context:
space:
mode:
Diffstat (limited to 'README.platforms')
-rw-r--r--README.platforms112
1 files changed, 112 insertions, 0 deletions
diff --git a/README.platforms b/README.platforms
new file mode 100644
index 0000000..a377079
--- /dev/null
+++ b/README.platforms
@@ -0,0 +1,112 @@
+
+ Apache HTTP Server
+
+ Platform specific notes:
+ ------------------------
+
+================
+ Darwin (OS X):
+ Apache 2 relies heavily on the use of autoconf and libtool to
+ provide a build environment. Darwin provides these tools as part
+ of the Developers Tools package. Under Darwin, however, GNUlibtool
+ is installed as 'glibtool' to avoid conflicting with the Darwin
+ 'libtool' program. Apache 2 knows about this so that's not a
+ problem.
+
+ As of OS X 10.2 (Jaguar), the bundled versions work perfectly. Partly
+ this is due to the fact that /bin/sh is now 'bash' and not 'zsh' as
+ well as the fact that the bundled versions are up-to-date:
+ autoconf 2.52 and (g)libtool 1.4.2.
+
+ You will note that GNU libtool should actually be installed as
+ glibtool, to avoid conflict with a Darwin program of the same
+ name.
+
+ There have been some reports that autoconf 2.52 prevents Apache's
+ build system from correctly handling passing multi-value envvars
+ to the build system (eg: CFLAGS="-g -O3" ./configure), causing
+ errors. Use of bash does not seem to help in this situation. If
+ this affects you, downgrading to autoconf 2.13 (which is installed
+ on Darwin) will help.
+
+ With Leopard (at least up to 10.5.2), when running configure
+ you will likely see errors such as:
+
+ rm: conftest.dSYM: is a directory
+
+ This is a known issue and will be fixed in a later version of the
+ autoconf suite. These errors can be safely ignored.
+
+ For later versions of OS X, (10.8 and 10.9), be sure to have Xcode
+ AND Xcode Command Line Tools installed. httpd will built both with
+ gcc and clang.
+
+==========
+ FreeBSD:
+ autoconf 2.52 creates scripts that are incompatible with the Posix
+ shell implementation (/bin/sh) on FreeBSD. Be sure to use v2.13
+ of autoconf.
+
+ Threaded MPMs are not supported on FreeBSD 4.x. Current releases of
+ FreeBSD 5.x (5.2 or later) support threaded MPMs correctly. You must pass
+ '--enable-threads=yes' to APR's configure in order to enable threads.
+ Additionally, you must use libthr or libkse via libmap.conf as the default
+ libc_r is still broken as of this writing. Please consult the man page for
+ libmap.conf for more details about configuring libthr or libkse.
+================
+ HP-UX:
+ The dlopen() system call in HP-UX has problems when loading/unloading
+ C++ modules. The problem can be resolved by using shl_load() instead
+ of dlopen(). This is fixed in the Apache 2.0.44 release.
+ To enable loading of C++ modules, the httpd binary has to be linked with
+ the following libraries :
+
+ HP-UX (11.0 / 11i):
+ When using shl_load : "cpprt0_stub.s -lcl"
+ When using dlopen : "cpprt0_stub.s -lcl -lCsup"
+
+ HP-UX (11i version 1.5 and greater):
+ When using dlopen/shl_load : "cpprt0_stub.s -lcl -lunwind"
+
+ The cpprt0_stub.s can be downloaded from the web site :
+ http://h21007.www2.hp.com/hpux-devtools/CXX/hpux-devtools.0107/0083.html
+
+ Compile cpprt0_stub.s with the PIC option
+ cc -c +z cpprt0_stub.s
+ - OR -
+ gcc -c -fPIC cpprt0_stub.s
+================
+ AIX, using the vendor C compiler with optimization:
+ There is an issue with compiling server/core.c with optimization enabled
+ which has been seen with C for AIX 5.0.2.3 and above. (5.0.2.0, 5.0.2.1,
+ and 5.0.2.2 have an additional problem with Apache 2.0.x, so either upgrade
+ the compiler or don't use optimization in order to avoid it.)
+
+ cc_r works fine with -O2 but xlc_r does not. In order to use xlc_r with
+ -O2, apply the patch at
+
+ http://www.apache.org/dist/httpd/patches/apply_to_2.0.49/aix_xlc_optimization.patch
+
+ (That patch works with many recent levels of Apache 2+.)
+
+================
+ Solaris:
+
+ On Solaris, better performance may be achieved by using the Sun Studio
+ compiler instead of gcc. As of version 11, it is now free (registration
+ required). Download the compiler from:
+
+ http://developers.sun.com/prodtech/cc/downloads/index.jsp
+
+ If you use Sun Studio, the following compiler flags (CFLAGS) are
+ recommended:
+
+ -XO4 -xchip=generic
+
+================
+ Ubuntu:
+
+ You will need to ensure that you have either libtool 1.5.6
+ or 2.2.6b, or later. Expat 2.0.1 and PCRE 8.02 are also
+ recommended to be installed. If building PCRE from source,
+ you'll also need g++.