Code

Imported upstream version 1.3rc9.
[pkg-rrdtool.git] / doc / rrdbuild.txt
index 11b83c142d588a0b6d14aec570c0d6e5278c2f07..f3f08466e2a3a54ffdfbe4a0f097b87cadaa9aed 100644 (file)
@@ -9,7 +9,7 @@ O\bOV\bVE\bER\bRV\bVI\bIE\bEW\bW
        If you downloaded the source of rrdtool you have to compile it. This
        document will give some information on how this is done.
 
-       RRDtool relies on services of thrid part libraries. Some of these
+       RRDtool relies on services of third part libraries. Some of these
        libraries may already be installed on your system. You have to compile
        copies of the other ones before you can build RRDtool.
 
@@ -35,7 +35,7 @@ O\bOP\bPT\bTI\bIM\bMI\bIS\bST\bTI\bIC\bC B\bBU\bUI\bIL\bLD\bD
        ables.
 
         BUILD_DIR=/tmp/rrdbuild
-        INSTALL_DIR=/usr/local/rrdtool-1.3rc6
+        INSTALL_DIR=/usr/local/rrdtool-1.3rc9
 
        If your _\b/_\bt_\bm_\bp is mounted with the option noexec (RHEL seems todo that)
        you have to choose a different directory!
@@ -48,9 +48,9 @@ O\bOP\bPT\bTI\bIM\bMI\bIS\bST\bTI\bIC\bC B\bBU\bUI\bIL\bLD\bD
        Lets first assume you already have all the necessary libraries
        pre-installed.
 
-        wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.3rc6.tar.gz
-        gunzip -c rrdtool-1.3rc6.tar.gz | tar xf -
-        cd rrdtool-1.3rc6
+        wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.3rc9.tar.gz
+        gunzip -c rrdtool-1.3rc9.tar.gz | tar xf -
+        cd rrdtool-1.3rc9
         ./configure --prefix=$INSTALL_DIR && make && make install
 
        Ok, this was very optimistic. This try will probably have ended with
@@ -61,7 +61,9 @@ I\bIN\bNS\bST\bTA\bAL\bLL\bLI\bIN\bNG\bG D\bDE\bEP\bPE\bEN\bND\bDE\bEN\bNC\bCI\bIE\bES\bS
        tory, you may get away with installing the missing packages. When the
        packages are installed, run configure again and try to compile again.
        Below you find some hints on getting your OS ready for the rrdtool com-
-       pilation. Additions to this list are welcome.
+       pilation.
+
+       Additions to this list are welcome.
 
        O\bOp\bpe\ben\bnS\bSo\bol\bla\bar\bri\bis\bs 2\b20\b00\b08\b8.\b.0\b05\b5
 
@@ -70,10 +72,10 @@ I\bIN\bNS\bST\bTA\bAL\bLL\bLI\bIN\bNG\bG D\bDE\bEP\bPE\bEN\bND\bDE\bEN\bNC\bCI\bIE\bES\bS
         pkg install sunstudioexpress
         pkg install SUNWgnome-common-devel
 
-       There is a a problem with _\bc_\ba_\bi_\br_\bo_\b._\bp_\bc on opensolaris. It suggests that
-       xrender is required for compilation with cairo. This is not true and
-       also bad since opensolaris does not include an _\bx_\br_\be_\bn_\bd_\be_\br_\b._\bp_\bc file. Use
-       perl to fix this:
+       There is a problem with _\bc_\ba_\bi_\br_\bo_\b._\bp_\bc on opensolaris. It suggests that xren-
+       der is required for compilation with cairo. This is not true and also
+       bad since opensolaris does not include an _\bx_\br_\be_\bn_\bd_\be_\br_\b._\bp_\bc file. Use perl to
+       fix this:
 
         perl -i~ -p -e 's/(Requires.*?)\s*xrender.*/$1/' /usr/lib/pkgconfig/cairo.pc
 
@@ -84,18 +86,42 @@ I\bIN\bNS\bST\bTA\bAL\bLL\bLI\bIN\bNG\bG D\bDE\bEP\bPE\bEN\bND\bDE\bEN\bNC\bCI\bIE\bES\bS
 
         apt-get install libpango1.0-dev libxml2-dev
 
+       G\bGe\ben\bnt\bto\boo\bo
+
+       In Gentoo installing rrdtool is really simple you just need to e\bem\bme\ber\brg\bge\be
+       r\brr\brd\bdt\bto\boo\bol\bl. All dependencies will be handled automatically by the portage
+       system. The only thing you should care about are USE flags, which allow
+       you fine tune features rrdtool will be built with. Currently the fol-
+       lowing USE flags are available:
+
+        doc    - install .html and .txt documentation
+                 into /usr/share/doc/rrdtool-1.x.xx/
+        perl   - build and install perl language bindings
+        python - build and install python language bindings
+        ruby   - build and install ruby language bindings
+        tcl    - build and install tcl language bindings
+        rrdcgi - build and install rrdcgi
+
+       After you've decided which USE flags you need, set them either in
+       _\bm_\ba_\bk_\be_\b._\bc_\bo_\bn_\bf or _\b/_\be_\bt_\bc_\b/_\bp_\bo_\br_\bt_\ba_\bg_\be_\b/_\bp_\ba_\bc_\bk_\ba_\bg_\be_\b._\bu_\bs_\be and finally run:
+
+        # emerge -va rrdtool
+
+       Take a look at Gentoo handbook for further details on how to manage USE
+       flags: http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=2
+
 B\bBU\bUI\bIL\bLD\bDI\bIN\bNG\bG D\bDE\bEP\bPE\bEN\bND\bDE\bEN\bNC\bCI\bIE\bES\bS
        But again this may have been too optimistic still, and you actually
        have to compile your own copies of some of the required libraries.
        Things like libpng and zlib are pretty standard so you will probably
        have them on your system anyway. Freetype, Fontinst, Cairo, Pango may
        be installed, but it is possible that they are pretty old and thus
-       don't live up to the expectations, so you may want to compile their
+       don't live up to our expectations, so you may want to compile their
        latest versions.
 
-       _\bB_\bu_\bi_\bl_\bd _\bT_\bi_\bp_\bp_\bs _\bf_\bo_\br _\bA_\bI_\bX
+       _\bB_\bu_\bi_\bl_\bd _\bT_\bi_\bp_\bs _\bf_\bo_\br _\bA_\bI_\bX
 
-       If you are woking with AIX, you may find the the -\b--\b-d\bdi\bis\bsa\bab\bbl\ble\be-\b-s\bsh\bha\bar\bre\bed\bd
+       If you are working with AIX, you may find the the -\b--\b-d\bdi\bis\bsa\bab\bbl\ble\be-\b-s\bsh\bha\bar\bre\bed\bd
        option will cause things to break for you. In that case you may have to
        install the shared libraries into the rrdtool PREFIX and work with
        -\b--\b-d\bdi\bis\bsa\bab\bbl\ble\be-\b-s\bst\bta\bat\bti\bic\bc instead.
@@ -113,21 +139,23 @@ B\bBU\bUI\bIL\bLD\bDI\bIN\bNG\bG D\bDE\bEP\bPE\bEN\bND\bDE\bEN\bNC\bCI\bIE\bES\bS
        In order to build the libraries you need a compiler on your system.
        Unfortunately compilers are not all alike. This has an effect on the
        CFLAGS you want to set. The examples below are for the popular GCC com-
-       piler suite.  If you have an other compile you have to use the follow-
-       ing settings:
+       piler suite.  If you have an other compilers here are some ides:
 
        Sun Forte
             CFLAGS="-xO3 -kPIC"
 
            Some libraries want to know where other libraries are. For this to
-           work, set the following environamen variable
+           work, set the following environment variable
 
             export PKG_CONFIG_PATH=${INSTALL_DIR}/lib/pkgconfig
             export PATH=$INSTALL_DIR/bin:$PATH
 
-           Since we are compiling libraries dynamically, you they must further
-           know where to find each other. This is done by setting an appropri-
-           ate LDFLAG.  Unfortunatly the syntax differs from system to system:
+           This relies on the presence of the _\bp_\bk_\bg_\bc_\bo_\bn_\bf_\bi_\bg program. Below you
+           find instructions on how to compile pkgconfig as well.
+
+           Since we are compiling libraries dynamically, they must know where
+           to find each other. This is done by setting an appropriate LDFLAGS.
+           Unfortunately, the syntax again differs from system to system:
 
            Solaris
                 export LDFLAGS=-R${INSTALL_DIR}/lib
@@ -135,10 +163,6 @@ B\bBU\bUI\bIL\bLD\bDI\bIN\bNG\bG D\bDE\bEP\bPE\bEN\bND\bDE\bEN\bNC\bCI\bIE\bES\bS
            Linux
                 export LDFLAGS="-Wl,--rpath -Wl,${INSTALL_DIR}/lib"
 
-               If you are on a 64bit platform, but would like to continue to
-               use the rrd files created on your old 32bit linux, you may be
-               able
-
            HPUX
                 export LDFLAGS="+b${INSTALL_DIR}/lib"
 
@@ -150,10 +174,22 @@ B\bBU\bUI\bIL\bLD\bDI\bIN\bNG\bG D\bDE\bEP\bPE\bEN\bND\bDE\bEN\bNC\bCI\bIE\bES\bS
             export MAKE=gmake
             export GNUMAKE=gmake
 
-           otherwhise just do
+           otherwise just do
 
             export MAKE=make
 
+       Building pkgconfig
+           As mentioned above, without pkgconfig the whole build process will
+           be lots of pain and suffering, so make sure you have a copy on your
+           system. If it is not available natively, here is how to compile it.
+
+            wget http://pkgconfig.freedesktop.org/releases/pkg-config-0.23.tar.gz
+            gunzip -c pkg-config-0.23.tar.gz | tar xf -
+            cd pkg-config-0.23
+            ./configure --prefix=$INSTALL_DIR CFLAGS="-O3 -fPIC"
+            $MAKE
+            $MAKE install
+
        Building zlib
            Chances are very high that you already have that on your system ...
 
@@ -167,10 +203,10 @@ B\bBU\bUI\bIL\bLD\bDI\bIN\bNG\bG D\bDE\bEP\bPE\bEN\bND\bDE\bEN\bNC\bCI\bIE\bES\bS
 
        Building libpng
            Libpng itself requires zlib to build, so we need to help a bit. If
-           you already have a copy of zlib on your system (which is very lik-
-           ley) you can drop the settings of LDFLAGS and CPPFLAGS. Note that
-           the backslash (\) at the end of line 4 means that line 4 and line 5
-           are on one line.
+           you already have a copy of zlib on your system (which is very
+           likely) you can drop the settings of LDFLAGS and CPPFLAGS. Note
+           that the backslash (\) at the end of line 4 means that line 4 and
+           line 5 are on one line.
 
             cd $BUILD_DIR
             wget http://oss.oetiker.ch/rrdtool/pub/libs/libpng-1.2.18.tar.gz
@@ -204,10 +240,10 @@ B\bBU\bUI\bIL\bLD\bDI\bIN\bNG\bG D\bDE\bEP\bPE\bEN\bND\bDE\bEN\bNC\bCI\bIE\bES\bS
             $MAKE install
 
        Building fontconfig
-           Note that fontconfig has a runtime configuration file in
+           Note that fontconfig has a run time configuration file in
            INSTALL_DIR/etc you may want to adjust that so that fontconfig
            finds the fonts on your system.  Run the fc-cache program to build
-           the fontconfig cache after changeing the config file.
+           the fontconfig cache after changing the config file.
 
             cd $BUILD_DIR
             wget http://oss.oetiker.ch/rrdtool/pub/libs/fontconfig-2.4.2.tar.gz
@@ -221,7 +257,7 @@ B\bBU\bUI\bIL\bLD\bDI\bIN\bNG\bG D\bDE\bEP\bPE\bEN\bND\bDE\bEN\bNC\bCI\bIE\bES\bS
             cd $BUILD_DIR
             wget http://oss.oetiker.ch/rrdtool/pub/libs/pixman-0.10.0.tar.gz
             gunzip -c pixman-0.10.0.tar.gz  | tar xf -
-            cd fontconfig-2.4.2
+            cd pixman-0.10.0
             ./configure --prefix=$INSTALL_DIR CFLAGS="-O3 -fPIC"
             $MAKE
             $MAKE install
@@ -268,14 +304,14 @@ B\bBU\bUI\bIL\bLD\bDI\bIN\bNG\bG D\bDE\bEP\bPE\bEN\bND\bDE\bEN\bNC\bCI\bIE\bES\bS
        python and tcl setups that would prevent rrdtool from building if they
        are included in their current state.
 
-        cd $BUILD_DIR/rrdtool-1.3rc6
+        cd $BUILD_DIR/rrdtool-1.3rc9
         ./configure --prefix=$INSTALL_DIR --disable-tcl --disable-python
         $MAKE clean
         $MAKE
         $MAKE install
 
        SOLARIS HINT: if you want to build  the perl module for the native perl
-       (the one shipping with solaris) you will need the sun forte compiler
+       (the one shipping with Solaris) you will need the sun forte compiler
        installed on your box or you have to hand-tune bind-
        ings/perl-shared/Makefile while building!
 
@@ -287,4 +323,4 @@ A\bAU\bUT\bTH\bHO\bOR\bR
 
 
 
-1.3rc6                            2008-05-26                       RRDBUILD(1)
+1.3rc9                            2008-06-08                       RRDBUILD(1)