[mrtg] Re: Installing and Compiling MRTG on Solaris 8

Matthew Petach mpetach at yahoo.com
Tue Sep 21 00:32:18 MEST 2004

--- John Schons <jschons at isd.co.la.ca.us> wrote:
> Hi, 
> I am trying to get MRTG running on Solaris 8 (Sparc Box) and am having
> a bit of difficulty. I downloaded all the appropriate packages from
> sunfreeware.com (thanks, Steve, for your help on this) and opened them
> up and did a pkgadd -d on all of them. I have two questions: 
> 1) I can't find out where the zlib directory ended up. It isn't in
> /usr/local and, when I run a "find / -name zlib" the only result I get
> is > /var/sadm/pkg/SMCzlib. I have run pkgadd -d on this several times
> and the result is the same. Where did this rascal go? 

libraries on Solaris (and most other Unices) are of the form
"libX.a" or "libX.so.V" where X is the abbreviation of the
library used when linking against it, and V is the shared
library version number.  In this case, since you're linking
against the statically compiled version of the library, you'll
need to search for "libz.a".  If you look through the files
in /var/sadm/pkg/SMCzlib/ you'll be able to find a log of
where the files were installed, if you don't want to perform
another "find . -name libz.a" on your computer.
> Question 2) has to do with gd. I downloaded gd 2.028 from the boutell
> site and followed the instructions  in the "mrtg-unix-guide" from the
> mrtg site. Seemed to go OK (except that combining the env CPPFLAGS
> (etc.) with the --without- statements for freetype and jpeg didn't want
> to work together). When I try to compile MRTG I get a standard output
> error that says: 
> ==
> checking for gdImageGif in -lgd... no 
> checking for gdImagePng in -lgd... no 
> checking for gdImagePng_jpg in -lgd... no 
> checking for gdImagePng_jpg_ft in -lgd... no 
> checking for gdImageGd in -lgd... no 
> checking gd.h usability... yes 
> checking gd.h presence... yes 
> checking for gd.h... yes 
> ** Ooops, one of many bad things happened: 
> a)  You don't have the GD library installed. 
> Get it from http://www.boutell.com, compile it and 
>      use either --with-gd-lib=DIR and --with-gd-inc=DIR to specify 
>      its location. You might also have to use --with-z-inc, 
>            --with-z-lib and --with-png-inc, --with-png-lib for gd 
>            versions 1.6 and higher.  Check config.log for more 
>      information on the problem. 
> b)  You have the GD library installed, but not the gd.h 
>      header file.  Download the source (see above) and use 
>      --with-gd-inc=DIR to specify where the file can be found. 
> c)  You have the library and the header file installed, but 
>      you also have a shared GD library in the same directory. 
>      Remove the shared library files and/or links (e.g. 
>      libgd.so.2.0.0, libgd.so and libgd.so.2).  This is especially 
>            likely if you're using a recent (post 1.8.4) version of GD 
>      and didn't configure it with --disable-shared. 
> d)  You have gd library installed and also it's headers, but you are 
>      missing libpng (and headers) or freetype (and headers) 
>      (mrtg does not use freetype, but if your copy of gd is precompiled
>      against it, you have to install it ... 
> Consider following the instructions in doc/mrtg-unix-guide.txt 
> The only error of those above that seems like it might be the problem
> is: 
> b)  You have the GD library installed, but not the gd.h 
>      header file.  Download the source (see above) and use 
>      --with-gd-inc=DIR to specify where the file can be found. 
> but I'm not sure what the instructions are telling me to do. The gd
> compile statement documented on the site is as follows: 
> env CPPFLAGS="-I../zlib -I../libpng" LDFLAGS="-L../zlib -L../libpng"
> --without-freetype -- without-jpeg 
> This is the statement that I cannot get to work in the first place. If
> you put it all on the command line at once it says "env not found" but
> if you leave off  "--without-freetype -- without-jpeg" the whole thing
> seems to roll along quite merrily. Well, if it doesn't work as entered
> above it doesn't work with another --add statement either. Aiieee!! 

You need to find where it put the zlib files; -I tells the compiler
to look for include files in the next directory listed, and -L tells
the compiler (well, really the linker, but don't worry about that)
which directories to search for the library files.

Since your libz and libpng files don't exist in "../zlib" and "../libpng",
it's going to fail on those tests; also, your "libz.a" file is probably
not going to be found in "../libz" either.

First step, then, is to find out where your pkgadd -d installed
your files; then you'll know what the correct path names to use
for the -I and -L flags.  Of the two, the -L flag is the most
important; the -I flag only matters if the pkgadd also installed
the "libz.h" and "libpng.h" files; otherwise, leave off the -I
flags entirely.  But you'll need the -L flag, and you'll need it
to point to the correct place where your "libz.a" file is

Hope this helps!


> I have trolled throught the config.log a few times and it seems that 
> If anyone out there in MRTG land has experience with a Solaris 8
> installation and recognizes these errors I would sure appreciate it if
> you could toss me a clue. I have included the text of config.log for
> anyone who can help me decipher it. 
> Thanks, 
> John from LA  
> John Schons
> (562) 940 3024

Unsubscribe mailto:mrtg-request at list.ee.ethz.ch?subject=unsubscribe
Archive     http://www.ee.ethz.ch/~slist/mrtg
FAQ         http://faq.mrtg.org    Homepage     http://www.mrtg.org
WebAdmin    http://www.ee.ethz.ch/~slist/lsg2.cgi

More information about the mrtg mailing list