X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=doc%2Frrdbuild.pod;h=30ed62af9d10149b0ca340d5d8280c6bcb3e71ac;hb=eaba0fa04f928e6d3fd8ae558386527f7f9303ea;hp=a7cf9e6ae3d77fbcbd48cf0e4e7f79d4e24529c2;hpb=ac6b11cccdcc91b157be327e526f5f1f16b45f8c;p=rrdtool.git diff --git a/doc/rrdbuild.pod b/doc/rrdbuild.pod index a7cf9e6..30ed62a 100644 --- a/doc/rrdbuild.pod +++ b/doc/rrdbuild.pod @@ -35,12 +35,12 @@ Once you have decided. Save the two locations into environment variables. Depending on the shell you are using, you can do either (bash,zsh): BUILD_DIR=/tmp/rrdbuild - INSTALL_DIR=/usr/local/rrdtool-1.2.8 + INSTALL_DIR=/usr/local/rrdtool-1.2.12 Or if you run tcsh: set BUILD_DIR=/tmp/rrdbuild - set INSTALL_DIR=/usr/local/rrdtool-1.2.8 + set INSTALL_DIR=/usr/local/rrdtool-1.2.12 Now make sure the BUILD_DIR exists and go there: @@ -52,10 +52,10 @@ per-installed. Note that these instructions assume that your copies of B and B are actually B and B respectively. It could be that they are installed as B and B on your system. - wget http://people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/rrdtool-1.2.8.tar.gz - tar zxf rrdtool-1.2.8.tar.gz - cd rrdtool-1.2.8 - ./configure --prefix=/path/to/installation && make && make install + wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.2.12.tar.gz + tar zxf rrdtool-1.2.12.tar.gz + cd rrdtool-1.2.12 + ./configure --prefix=$INSTALL_DIR && make && make install Ok, this was very optimistic. This try will probably have ended with B complaining about several missing libraries. If you are on a @@ -69,22 +69,10 @@ compile your own copies of the required libraries. Here is how: =over -=item Building cgilib - - cd $BUILD_DIR - wget http://people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/libs/cgilib-0.5.tar.gz - tar zxf cgilib-0.5.tar.gz - cd cgilib-0.5 - make CC=gcc CFLAGS="-O3 -fPIC -I." - mkdir -p $BUILD_DIR/lb/include - cp *.h $BUILD_DIR/lb/include - mkdir -p $BUILD_DIR/lb/lib - cp libcgi* $BUILD_DIR/lb/lib - =item Building zlib cd $BUILD_DIR - wget http://people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/libs/zlib-1.2.2.tar.gz + wget http://oss.oetiker.ch/rrdtool/pub/libs/zlib-1.2.2.tar.gz tar zxf zlib-1.2.2.tar.gz cd zlib-1.2.2 env CFLAGS="-O3 -fPIC" ./configure --prefix=$BUILD_DIR/lb @@ -99,7 +87,7 @@ 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://people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/libs/libpng-1.2.8-config.tar.gz + wget http://oss.oetiker.ch/rrdtool/pub/libs/libpng-1.2.8-config.tar.gz tar zxvf libpng-1.2.8-config.tar.gz cd libpng-1.2.8-config env CPPFLAGS="-I$BUILD_DIR/lb/include" LDFLAGS="-L$BUILD_DIR/lb/lib" CFLAGS="-O3 -fPIC" \ @@ -110,7 +98,7 @@ the end of line 4 means that line 4 and line 5 are on one line. =item Building freetype cd $BUILD_DIR - wget http://people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/libs/freetype-2.1.9.tar.gz + wget http://oss.oetiker.ch/rrdtool/pub/libs/freetype-2.1.9.tar.gz tar zxvf freetype-2.1.9.tar.gz cd freetype-2.1.9 env CPPFLAGS="-I$BUILD_DIR/lb/include" LDFLAGS="-L$BUILD_DIR/lb/lib" CFLAGS="-O3 -fPIC" \ @@ -118,11 +106,16 @@ the end of line 4 means that line 4 and line 5 are on one line. make make install +If you run into problems building freetype on Solaris, you may want to try to +add the following at the end of the configure line: + + GNUMAKE=gmake EGREP=egrep =item Building libart_lgpl cd $BUILD_DIR - wget http://people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/libs/libart_lgpl-2.3.17.tar.gz + wget http://oss.oetiker.ch/rrdtool/pub/libs/libart_lgpl-2.3.17.tar.gz + tar zxvf libart_lgpl-2.3.17.tar.gz cd libart_lgpl-2.3.17 env CFLAGS="-O3 -fPIC" ./configure --disable-shared --prefix=$BUILD_DIR/lb make @@ -130,10 +123,17 @@ the end of line 4 means that line 4 and line 5 are on one line. =back -Now all the dependent libraries are built and you can try again. This time -you tell configure where it should be looking for libraries and include -files. This is done via environment variables. Depending on the shellyou are running, the syntax for setting -environment variables is different. Under csh/tcsh you use: +Now all the dependent libraries are built and you can try again. Since these +are static libraries, you may have to use F to make them accessible. +Especially BSD systems like Mac OS X may require this, Linux and Solaris +will do just fine without since their F command does ranlibs job as well. + + ranlib $BUILD_DIR/lb/lib/*.a + +This time you tell configure where it should be looking for libraries and +include files. This is done via environment variables. Depending on the +shell you are running, the syntax for setting environment variables is +different. Under csh/tcsh you use: set IR=-I$BUILD_DIR/lb/include setenv CPPFLAGS "$IR $IR/libart-2.0 $IR/freetype2 $IR/libpng" @@ -148,11 +148,23 @@ If you are running bash/sh/ash/ksh/zsh use this: CFLAGS=-O3 export CPPFLAGS LDFLAGS CFLAGS -And finally try building again: +And finally try building again. We disable the python and tcl bindings +because it seems that a fair number of people have ill configured python and +tcl setups that would prevent rrdtool from building if they are included in +their current state. - ./configure --prefix=$INSTALL_DIR && make && make install + cd $BUILD_DIR/rrdtool-1.2.12 + ./configure --prefix=$INSTALL_DIR --disable-python --disable-tcl + 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 +installed on your box or you have to hand-tune bindings/perl-shared/Makefile +while building! -Now go to I<$INSTALL_DIR>B and run them to see if your +Now go to I<$INSTALL_DIR>B and run them to see if your build has been successful. =head1 AUTHOR