X-Git-Url: https://git.octo.it/?p=rrdtool.git;a=blobdiff_plain;f=WIN32-BUILD-TIPS.txt;h=c80acc8576118643f1eeea9c526a8ab348ece09a;hp=68b5373919cacee398604be8a84c6b62a1f24384;hb=7cc289317f76f5efd8952ec8ed888b9632d1223b;hpb=75fb96990a3edc7ed2c216c9e89ec4769d1f505c diff --git a/WIN32-BUILD-TIPS.txt b/WIN32-BUILD-TIPS.txt index 68b5373..c80acc8 100644 --- a/WIN32-BUILD-TIPS.txt +++ b/WIN32-BUILD-TIPS.txt @@ -1,5 +1,55 @@ -Compiling RRDtool 1.1.x on Win32 with Microsoft Visual C++: +Compiling RRDtool on Win32 with Microsoft Visual C++: --------------------------------------------------------------- +2010-06-04 Chris Larsen clarsen@euphoriaaudio.com +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) Create a folder named "contrib" in the directory where this text file is located. + +(2) Download the following libraries that rrdtool depends on into this folder: + + - cairo: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo_1.8.10-3_win32.zip + and http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo-dev_1.8.10-3_win32.zip + + - glib: http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.24/glib_2.24.1-1_win32.zip + and http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.24/glib-dev_2.24.1-1_win32.zip + + - libpng: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libpng_1.4.0-1_win32.zip + and http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libpng-dev_1.4.0-1_win32.zip + + - libxml2: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libxml2_2.7.7-1_win32.zip + and http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libxml2-dev_2.7.7-1_win32.zip + + - pango: http://ftp.gnome.org/pub/gnome/binaries/win32/pango/1.28/pango_1.28.0-1_win32.zip + and http://ftp.gnome.org/pub/gnome/binaries/win32/pango/1.28/pango-dev_1.28.0-1_win32.zip + + - zlib: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/zlib_1.2.4-2_win32.zip + and http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/zlib-dev_1.2.4-2_win32.zip + + - fontconfig: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/fontconfig_2.8.0-2_win32.zip + + - freetype: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/freetype_2.3.12-1_win32.zip + + - expat: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/expat_2.0.1-1_win32.zip + +(3) Extract all of the .zip files into the contrib folder. Do not extract each library into it's own + directory. We want all of the files merged into a structure consisting of "bin, include, lib..." + etc folders. + +(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. + +6/10/10 Chris +Updated project to include latest files and libraries. +Builds static or dynamic rrdlib + 5/1/05 Tobi to help windows deal with the reentrant versions of many unix calls link with win32comp.c @@ -95,7 +145,7 @@ and cd to the bindings\perl-shared subdirectory. (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 @@ -221,3 +271,115 @@ Tamas Kovacshazy E-mail: khazy@mit.bme.hu 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= + e.g set LIBBASE=C:\Libraries + + If the libraries are scattered, set the following environment vers: + + set ZLIBSDK= + e.g set ZLIBSDK=C:\mytest\zlib-1.2.3 + set LIBPNG= + set LIBFT2= + set 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. + +