diff --git a/doc/README.build.posix.html b/doc/README.build.posix.html new file mode 100644 index 0000000000..150a72c2b6 --- /dev/null +++ b/doc/README.build.posix.html @@ -0,0 +1,780 @@ + + +
+ +Firebird builds on many POSIX compatible Unix and Linux platforms. +This document describes the process for building on these systems and +lists the supported configurations - including compiler revision and +OS level for best results. +
+Introduction
Contents
Preparing
+to Build Firebird
Before building Firebird it is necessary to create the "configure" +script, if one is not included with your distrubtion. The configure +script is generated by running the "autogen.sh" script. +Autogen.sh is a shell script located in the root directory of the +Firebird build. +
+Autogen.sh depends on the GNU toolchain to create "configure." +Modern LINUX distributions will already have the GNU toolchain +installed, but if you are attempting a build on a different POSIX +system, such as AIX, HP-UX, or Solaris, you may need to install the +necessary GNU utilities. +
+The table below shows the versions of the GNU tools used to build +Firebird 2.5 on the UNIX hosts. These versions of the GNU tools are +what we use to build Firebird 2.5 on the different POSIX hosts. These +versions of the GNU tools are what we use to build Firebird 2.5 on +the different POSIX hosts. We take measures to make configure +buildable with as wide range of autotools as possible, but we can't +check all possible combinations.
+
+ GNU Tool + + |
+
+ Recommended + Version + + |
+
+ Notes + + |
+
---|---|---|
+ m4 + + |
+
+ 1.4.12 + + |
+
+ autoconf and + libtool depend on m4 + + |
+
+ gmake + + |
+
+ 3.81 + + |
+
+ 3.80 tested + ok, too + + |
+
+ autoconf + + |
+
+ 2.63 + + |
+
+ 2.56 is + minimum version per configure.in file + + |
+
+ automake + + |
+
+ 1.10.1 + + |
+
+ 1.10.2 + tested ok, too + |
+
+ libtool + + |
+
+ 2.2.6a + + |
+
+ 1.5.26 + tested ok, too + |
+
./autogen.sh --with-system-editline=yes --with-system-icu --enable-debug+
Tip! It is possible to pass the configure options directly to +autogen, as shown in the example above. +
+Once the "configure" script is generated, it can be run +repeatedly without re-running the autogen.sh script. This allows the +user to retest with different configuration options. You can always +get actual list options using './configure –help'.
+
+ Configure + Option + + |
+
+ Description + + |
+
+ Default + Value + + |
+
---|---|---|
+ --enable-debug + + |
+
+ Build debug + version + + |
+
+ no + + |
+
+ --enable-raw-devices + + |
+
+ Enable + databases on raw devices + + |
+
+ yes + + |
+
+ --enable-superserver + + |
+
+ Build + SuperServer architecture instead Classic / SuperClassic + |
+
+ no + + |
+
+ --prefix + + |
+
+ Installation + location + + |
+
+ /usr/local/firebird + + |
+
+ --with-editline + + |
+
+ Advanced + editing and command retrieval for ISQL + + |
+
+ no + + |
+
+ --with-ipc-name + + |
+
+ Specify local + IPC name (mingw build only) + |
+
+ FirebirdIPI + + |
+
+ --with-system-editline + + |
+
+ Use system + version of editline, instead of bundled version of ICU + + |
+
+ no + + |
+
+ --with-system-icu + + |
+
+ Use system + version of ICU, instead of bundled version of ICU + + |
+
+ no + + |
+
+ --with-service-name + + |
+
+ Specify inet + service name + + |
+
+ gds_db + + |
+
+ --with-service-port + + |
+
+ Specify inet + service port + + |
+
+ 3050 + + |
+
+ --with-gpre-ada + + |
+
+ Support ADA + in gpre + + |
+
+ no + + |
+
+ --with-gpre-cobol + + |
+
+ Support COBOL + in gpre + + |
+
+ no + + |
+
+ --with-gpre-fortran + + |
+
+ Support + FORTRAN in gpre + + |
+
+ no + + |
+
+ --with-gpre-pascal + + |
+
+ Support + PASCAL in gpre + + |
+
+ no + + |
+
This section lists platforms, compilers, and compiler options +where Firebird has been succesfully tested. Optional flags for +enthusiasts are provided. +
+When Autoconf environment variables are provided, you must export +these before running configure. +
+Unless otherwise noted, all builds are 64-bit. Linux 32-bit builds +are also frequently tested.
+Firebird POSIX platforms +
+
+ AIX 6.1, + Power + + |
+
+ XL C++ + Compiler, 10.1 + + |
+
+ Frequently + Tested + + |
+
+ AIX 5.3, + Power + + |
+
+ XL C++ + Compiler, 10.1 + + |
+
+ Rarely + Tested + + |
+
+ HP-UX 11.31 + (11i v3), PA-RISC + + |
+
+ aCC C++ + Compiler 3.85 + + |
+
+ Frequently + Tested + + |
+
+ HP-UX 11.31 + (11i v3), Itanium + + |
+
+ aCC C++ + Compiler 3.85 + + |
+
+ Frequently + Tested + + |
+
+ HP-UX 11.23 + (11i v2), PA-RISC + + |
+
+ aCC C++ + Compiler 3.85 + + |
+
+ Rarely + Tested + + |
+
+ HP-UX 11.23 + (11i v2), Itanium + + |
+
+ aCC C++ + Compiler 3.85 + + |
+
+ Rarely + Tested + + |
+
+ Linux, Red + Hat Enterprise 5.3, AMD64 + + |
+
+ g++ 4.3.3 + + |
+
+ Frequently + Tested + + |
+
+ Linux, Open + SUSE 11.0, AMD64 + + |
+
+ g++ 4.3.3 + + |
+
+ Frequently + Tested + + |
+
+ Linux, Open + SUSE 10.2, AMD64 + + |
+
+ g++ 4.3.3 + + |
+
+ Frequently + Tested + + |
+
+ Solaris 10, + SPARC + + |
+
+ Sun Studio + 12, Update 1 + + |
+
+ Frequently + Tested + + |
+
+ Solaris 9 + SPARC + + |
+
+ Sun Studio + 12 + + |
+
+ Rarely + Tested + + |
+
+ Solaris 10, + AMD64 + + |
+
+ Sun Studio + 12, Update 1 + + |
+
+ Frequently + Tested + + |
+
export CC=cc_r + export CXX=xlC_r + export CFLAGS=-q64 + export CXXFLAGS=-q64+
This configuration was also succesfully tested against AIX 5.3. +
+Compiler version was XL C++ compiler, version 10.1.
+export CC=cc + export CXX=aCC + export CFLAGS=+DD64 + export CXXFLAGS=+DD64+
Compiler version was HP ANSI C++ 3.85.
+The default instruction set architecture for HP-UX Itanium is +blended. Enthusiasts may compile with +DSnative, which tunes for the +processor on which the compiler is running. +
+export CC=cc + export CXX=aCC + export CFLAGS=+DD64 + export CXXFLAGS=+DD64+
Compiler version was HP ANSI C++ 3.85.
+This configuration was also succesfully tested using HP-UX 11iv2. +
+g++ 4.3.3 is reference compiler for Firebird 2.5. +
+Firebird 2.5 has been tested on the following distributions: +
+Open SUSE 11.0 +
+Open SUSE 10.2 +
+Red Hat Enterprise 5.3 +
+Debian +
+No Autoconf Environment variables are required to build on 64-bit +Linux when using g++. +
+g++ 4.3.3 is reference compiler for Firebird 2.5. +
+No Autoconf Environment variables are required to build on 32-bit +Linux when using g++. +
+export CC=cc + export CXX=CC + export CFLAGS="-m64 -xarch=sparcvis" + export CXXFLAGS="-m64 -xarch=sparcvis"+
This configuration was also tested on Solaris 9, SPARC, using Sun +Studio 12. +
+Note! Sun Studio 12 is the last Sun Studio release to +support Solaris 9. Sun Studio "Update 1" requires Solaris +10 or greater. +
+export CC=cc + export CXX=CC + export CFLAGS="-m64 -xarch=sse2a" + export CXXFLAGS="-m64 -xarch=sse2a"+
Note! Firebird requires Solaris 10 when using Sun Studio on +Solaris AMD64 +
+Firebird is using current (one being built) engine to complete +build, therefore successfully finished build is somewhat tested, but +it does not provide a "make check" option. This may be +added in a future release. +
+After the build has finished, you may prepare your build in-place, +and run regession tests deploying it. +
+To prepare you build for "in-place" testing, you need to +execute the following commands. This assumes that Firebird was +downloaded and built in the /u/fbtest/firebird2h1 directory: +
+cd /u/fbtest/firebird2h1/gen/firebird + export FIREBIRD=/u/fbtest/firebird2h1/gen/firebird + export PATH=$FIREBIRD/bin:$PATH + cp misc/firebird.conf . + cp misc/fbintl.conf intl + cp intl/libfbintl.so lib/fbintl.so + export LD_LIBRARY_PATH=$FIREBIRD/lib+
Note! You may also need to edit the firebird.conf file and
+change RemoteFileOpenAbility=1
if you are testing on an
+NFS drive. PLEASE do NOT use this option in production unless you
+really understand well what are you doing!
At this point you can run regression tests using ISQL client. +
+The hard work is done. To install, just type +
+make install+ + \ No newline at end of file