diff --git a/WIN32-BUILD-TIPS.txt b/WIN32-BUILD-TIPS.txt
index 68b5373919cacee398604be8a84c6b62a1f24384..b3fae966ffb3095e6146b89b6764358f978a72fd 100644 (file)
--- a/WIN32-BUILD-TIPS.txt
+++ b/WIN32-BUILD-TIPS.txt
-Compiling RRDtool 1.1.x on Win32 with Microsoft Visual C++:
+Compiling RRDtool on Win32 with Microsoft Visual C++:
---------------------------------------------------------------
+2008-03-12 Stefan Ludewig stefan.ludewig@exitgames.com
+
+Here are step by step instructions for building rrdlib.lib and rrdtool.exe
+version 1.3.5 and newer with Microsoft Visual Studio 2008 (9.0.x).
+
+(1) Download and extract libraries rrdtool depends on:
+
+ - cairo: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo_1.8.0-1_win32.zip
+ and http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo-dev_1.8.0-1_win32.zip
+
+ - glib: http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib_2.18.3-1_win32.zip
+ and http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib-dev_2.18.3-1_win32.zip
+
+ - libpng: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libpng_1.2.32-1_win32.zip
+ and http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libpng-dev_1.2.32-1_win32.zip
+
+ - libxml2: http://downloads.sourceforge.net/gnuwin32/libxml2-2.4.12-bin.zip?modtime=1009062000&big_mirror=1
+ and http://downloads.sourceforge.net/gnuwin32/libxml2-2.4.12-1-lib.zip?modtime=1024783200&big_mirror=1
+
+ - pango: http://ftp.gnome.org/pub/gnome/binaries/win32/pango/1.22/pango_1.22.2-1_win32.zip
+ and http://ftp.gnome.org/pub/gnome/binaries/win32/pango/1.22/pango-dev_1.22.2-1_win32.zip
+
+ - zlib: http://www.zlib.net/zlib123-dll.zip
+
+(2) Create a folder named "contrib" next to your rrdtool-folder.
+
+(3) Copy the following folders and files from the downloaded archieves into
+ the contrib-folder, you just created:
+
+ a) The folder "bin" from cairo_1.8.0-1_win32 and the folders "lib" and
+ "include" from cairo-dev_1.8.0-1_win32 into contrib/cairo.
+
+ b) The folder "bin" from glib_2.18.3-1_win32 and the folders "lib" and
+ "include" from glib-dev_2.18.3-1_win32 into contrib/glib
+
+ c) The folder "bin" from libpng_1.2.32-1_win32 and the folders "lib" and
+ "include" from libpng-dev_1.2.32-1_win32 into contrib/libpng
+
+ d) The file "libxml2.dll" from libxml2-2.4.12-bin/bin and the file
+ "libxml2.lib" from libxml2-2.4.12-1-lib\lib into contrib/libxml2/lib and
+ the folder "include" from from libxml2-2.4.12-1-lib into contrib/libxml2
+
+ e) The folder "bin" from pango_1.22.2-1_win32 and the folders "lib" and
+ "include" from pango-dev_1.22.2-1_win32 into contrib/pango
+
+ f) The folders "lib" and "include" and the file "zlib1.dll" into
+ contrib/zlib
+
+(4) Open the Visual Studio 2008 Solution "rrd.sln" in the win32 folder of
+ your rrdtool-folder and build either the project rrdlib (for the
+ rrdtool-library), rrdtool (for the rrdtool-executable depending on the
+ libraray) or the complete solution. A post-build event automatically copies
+ all the dlls, needed by rrdtool, next to the .exe, when you build the
+ executable. These DLLs must be available on all hosts where rrdtool will
+ run.
+
5/1/05 Tobi
to help windows deal with the reentrant versions of many unix
calls link with win32comp.c
(8) Run vcvars32.bat; this batch file, in your vc98\bin directory will
set necessary environment options for command line compiling.
(9) In bindings\perl-shared, run
-perl ntmake.pl
+perl ntmake-build
nmake
nmake test
If nmake test succeeds, you are good to go. RRDs.dll is in
WWW: http://www.mit.bme.hu/~khazy
Technical University of Budapest
Department of Measurement and Information Systems
+
+
+Compiling RRDtool 1.2.x on Win32 with MingW32 gcc:
+---------------------------------------------------------------
+
+1. Obtain and install the current version of the MingW package.
+
+ http://www.mingw.org/download.shtml
+
+ In the MinGW set you will need the gcc and binutils as a minimum.
+
+2. Obtain either of the following awk versions and install in a directory
+ on your System Path:
+
+ - awk.exe
+
+ http://cm.bell-labs.com/cm/cs/awkbook/index.html
+
+ Note: This version has no dependencies to other libs.
+
+ - gawk.exe (GnuWin32 version)
+
+ http://gnuwin32.sourceforge.net/packages/gawk.htm
+
+ Note: Also fetch the dependant libraries for it from the same page.
+
+3. If you plan to create a 'distribution' release of the RRD Tools, the
+ Makefile.Win32 will copy all the needed files to an output directory and
+ then zip the entire directory. A suitable zip utility can be obtained here:
+
+ http://www.info-zip.org/
+
+ Install in a directory on your System Path.
+
+4. Obtain the following libraries, ideally install them all under a common
+ directory:
+
+ = zlib
+
+ http://oss.oetiker.ch/rrdtool/pub/libs/zlib-1.2.3.tar.gz
+ http://www.zlib.net/
+
+ = libpng
+
+ http://oss.oetiker.ch/rrdtool/pub/libs/libpng-1.2.12.tar.gz
+ http://libpng.sourceforge.net/
+
+ = freetype
+
+ http://oss.oetiker.ch/rrdtool/pub/libs/freetype-2.2.1.tar.gz
+ http://freetype.sourceforge.net/index2.html
+
+ = libart_lgpl
+
+ http://oss.oetiker.ch/rrdtool/pub/libs/libart_lgpl-2.3.17.tar.gz
+ http://www.levien.com/libart/
+
+ Note: libart_lgpl needs a special tweak because the archive contains
+ only the base directory, but the libart headers are usually included with
+ a directory prefix; therefore create a subfolder 'libart_lgpl' and move
+ all files into this subfolder.
+
+5. Set up for DOS environment.
+
+ Add MingW\bin and MSYS\bin directories to your System path.
+
+ If the libraries share a common directory set the following environment var:
+
+ set LIBBASE=<shared director>
+ e.g set LIBBASE=C:\Libraries
+
+ If the libraries are scattered, set the following environment vers:
+
+ set ZLIBSDK=<path to zlib>
+ e.g set ZLIBSDK=C:\mytest\zlib-1.2.3
+ set LIBPNG=<path to libpng>
+ set LIBFT2=<path to freetype>
+ set LIBART=<path to libart>
+
+ If using the Gnu Awk (gawk.exe), edit the Makefile.Win32 and change the line:
+
+ AWK = awk
+
+ to
+
+ AWK = gawk
+
+6. Compile the project.
+
+ All dependent libs are statically linked in. This has the benefit that the
+ binaries do not depend on any other DLLs.
+ In order to build the static freetype lib enter the freetype base directory
+ and type 'make'. If everything is fine a message appears that gcc is detected,
+ and that you should again type 'make'. Follow that in order to build freetype.
+ All other libs are build from the sources with the RRDTool Makefile.Win32.
+
+ Switch to the RRDTOOL .\src directory. Then:
+
+ make -f Makefile.Win32 help
+
+ to see the build options, or
+
+ make -f Makefile.Win32 all
+
+ should build the entire package.
+
+6. Happy Graphing!
+
+
+written by normw & gk.
+
+