[rrd-users] Problems with building on Suse Linux 9.0

Dan Willis groover4life at hotmail.com
Fri Jun 8 19:35:36 CEST 2007


Ok,

Well, I would have thought that this would have installed it into the system
properly so that all of the other applications would see rrdtool version 1.2
instead of version 1.0.46 (installed by default with Suse).  But none of my
applications see it so now I'm not sure what I need to do..

----- Original Message ----- 
From: <ralf-buero at kruedewagen.de>
To: "Dan Willis" <groover4life at hotmail.com>
Sent: Thursday, June 07, 2007 4:51 PM
Subject: Re: [rrd-users] Problems with building on Suse Linux 9.0


> Great that it works now. Congratulations.
> It's 10:50pm here, so I go to bed now ;-)
>
> Cheers
> Ralf
>
> Am Donnerstag, 7. Juni 2007 schrieb Dan Willis:
> > Ok,
> >
> > I went back and deleted everything and started over.  I took my time and
> > went through the entire process again, paying careful attention to the
> > directories, library locations, etc.  I still ended up with the same
error.
> >
> > So I went back and did as you suggested because I saw in part of the
error
> > that there is a problem trying to link against a shared library.  So I
> > removed the --disable-shared library option and I also did not compile
with
> > the -fPIC options (it is suggested to use that compiler option when
> > building the libraries in the tutorial on the rrdtool website).
> >
> > After I went through these steps, rrdtool finally compiled and now runs.
I
> > installed it into opt/rrdtool-1.2.23 and now I have to go through the
> > process of making sure that my applications which are dependent on it
will
> > now find the new locations of rrdtool.
> >
> > Thanks a bunch.  Seems every OS configuration has it's own quirks...
> >
> > Best,
> > Dan
> >
> > ----- Original Message -----
> > From: <ralf-buero at kruedewagen.de>
> > To: "Dan Willis" <groover4life at hotmail.com>
> > Sent: Thursday, June 07, 2007 1:42 PM
> > Subject: Re: [rrd-users] Problems with building on Suse Linux 9.0
> >
> > > Hm, it is getting strange. It's a problem with libpng, but I have no
idea
> > > what -fPIC means. And it becomes harder because you have a 64bit
system.
> >
> > In
> >
> > > general all 64bit systems have libs in /usr/lib64 but also in /usr/lib
> > > for remaining 32bit software. That makes compiling sometimes tricky,
even
> > > SuSE 9.0 is a quite old system.
> > >
> > > So, my guesses:
> > >
> > > - libpng (and possibly also libart) is compiled as 32bit, but 64bit
might
> >
> > be
> >
> > > needed here
> > > - libpng (and possibly also libart) is compiled with --disable-shared,
> >
> > which
> >
> > > causes problems. Have you used --disable-shared ? Maybe try
> > > without --disable-shared.
> > > - Are your libpng libs really installed in /lb/lib/ ????
> > > - Try to copy libpng and libart libs and include files to /usr/lib64
> > > and /usr/include and run configure without setting LDFLAGS and
CPPFLAGS
> > > - Maybe also try to add /usr/lib to your configure run
> > > with "--libdir=/usr/lib64 --libdir=/usr/lib"
> > >
> > > If all this does not help, I am at an end.
> > > Good luck
> > > Ralf
> > >
> > > Am Donnerstag, 7. Juni 2007 schrieb Dan Willis:
> > > > Ok,  using the variables below I was able to get the configure to
run,
> >
> > but
> >
> > > > now I am into another problem when running the make command.  Here
is
> >
> > the
> >
> > > > build error I get:
> > > >
> > > > (cd .libs && rm -f librrdupd.la && ln -s ../librrdupd.la
librrdupd.la)
> > > > /bin/sh ../libtool --tag=CC --mode=link
> > > > gcc  -O3 -fno-strict-aliasing -Wall -std=gnu99 -pedantic -Wshadow
> > > > -Wpointer- arith -Wca
> > > >
> > > >
st-align -Wmissing-prototypes -Wmissing-declarations -Wnested-externs
> > > > -Winli ne -W  -fPIC -DPIC  -L/lb/lib -o librrd.la -rpath
> > > > /downloads/rrdtool-1.2/lib -version-info 2:10:0 hash_32.lo
pngsize.lo
> > > > rrd_create.lo rrd_dump.lo rrd_fetch.lo rrd_graph.lo rrd_
> >
> > graph_helper.lo
> >
> > > > rrd_last.lo rrd_lastupdate.lo rrd_first.lo rrd_resize.lo
rrd_restore.lo
> > > > rrd_tune.lo rrd_version.lo rrd_xport.l  o art_rgba_svp.lo rrd_gfx.lo
> > > > rrd_afm.lo rrd_afm_data.lo rrd_tool.lo
> > > > librrdupd.la -lfreetype -lpng -lz -lart_lgpl_2 -lm
> > > > gcc -shared  .libs/hash_32.o .libs/pngsize.o .libs/rrd_create.o
> > > > libs/rrd_dump.o .libs/rrd_fetch.o .libs/rrd_graph.o .libs/rrd
> > > > _graph_helper.o .libs/rrd_last.o .libs/rrd_lastupdate.o
> >
> > libs/rrd_first.o
> >
> > > > libs/rrd_resize.o .libs/rrd_restore.o .libs/rrd_tun  e.o
> > > > libs/rrd_version.o .libs/rrd_xport.o .libs/art_rgba_svp.o
> >
> > libs/rrd_gfx.o
> >
> > > > libs/rrd_afm.o .libs/rrd_afm_data.o .libs/rrd_
> >
> >  tool.o -Wl,--whole-archive
> >
> > > > /.libs/librrdupd.a -Wl,--no-whole-archive  -L/lb/lib
> > > > /usr/lib64/libfreetype.so /lb/lib/libpng12.a   -lz
> > > > /lb/lib/libart_lgpl_2.a -lm  -Wl,-soname -Wl,librrd.so.2 -o
> > > > libs/librrd.so.2.0.10
> >
> >
/usr/lib64/gcc-lib/x86_64-suse-linux/3.3.3/../../../../x86_64-suse-linux/bi
> >
> > > >n /ld: /lb/lib/libpng12.a(libpng12_la-png.o): reloca  tion
R_X86_64_32
> >
> > can
> >
> > > > not be used when making a shared object; recompile with -fPIC
> > > > /lb/lib/libpng12.a: could not read symbols: Bad value
> > > > collect2: ld returned 1 exit status
> > > > make[2]: *** [librrd.la] Error 1
> > > > make[2]: Leaving directory `/downloads/rrdtool-1.2.23/src'
> > > > make[1]: *** [all-recursive] Error 1
> > > > make[1]: Leaving directory `/downloads/rrdtool-1.2.23'
> > > > make: *** [all] Error 2
> > > >
> > > > Any idea what this error is?  It seems to be related to libpng and
it
> > > > is saying to recompile it with -fPIC tags???
> > > >
> > > >
> > > >
> > > > ----- Original Message -----
> > > > From: "Dan Willis" <groover4life at hotmail.com>
> > > > To: <ralf-buero at kruedewagen.de>
> > > > Sent: Thursday, June 07, 2007 1:08 PM
> > > > Subject: Re: [rrd-users] Problems with building on Suse Linux 9.0
> > > >
> > > > > Since my libaries aren't in the same directory as my build
directory,
> > > > > wouldn't the variables be this for me:
> > > > >
> > > > >  IR=-I/lb/include
> > > > >  CPPFLAGS="$IR $IR/libart-2.0 $IR/freetype2 $IR/libpng"
> > > > >  LDFLAGS="-L/lb/lib"
> > > > >  CFLAGS=-O3
> > > > >  export CPPFLAGS LDFLAGS CFLAGS
> > > > >
> > > > >
> > > > > ----- Original Message -----
> > > > > From: <ralf-buero at kruedewagen.de>
> > > > > To: "Dan Willis" <groover4life at hotmail.com>
> > > > > Sent: Thursday, June 07, 2007 12:32 PM
> > > > > Subject: Re: [rrd-users] Problems with building on Suse Linux 9.0
> > > > >
> > > > > > The documentation on the website states the variable should
be -L:
> > > > > >  IR=-I$BUILD_DIR/lb/include
> > > > > >  CPPFLAGS="$IR $IR/libart-2.0 $IR/freetype2 $IR/libpng"
> > > > > >  LDFLAGS="-L$BUILD_DIR/lb/lib"
> > > > > >  CFLAGS=-O3
> > > > > >  export CPPFLAGS LDFLAGS CFLAGS
> > > > > >
> > > > > > If LDFLAGS points to the dir where only libpng and libart are
> >
> > installed
> >
> > > > > > (according to the documentation), you should have no problems.
The
> > > > >
> > > > > configure
> > > > >
> > > > > > script sets the standard libdir /usr/lib64. The LDFLAGS path is
an
> > > > >
> > > > > additional
> > > > >
> > > > > > one.
> > > > > >
> > > > > > Yes, you could also copy (or link) all your extra libs and
header
> >
> > files
> >
> > > > > > to /usr/lib64 and /usr/include, if the method above does not
work.
> >
> > But
> >
> > > > > > I would prefer to keep them in the original dir to avoid trouble
> >
> > with
> >
> > > > > > the standard SUSE update mechanism.
> > > > > >
> > > > > > Ralf
> > > > > >
> > > > > > Am Donnerstag, 7. Juni 2007 schrieb Dan Willis:
> > > > > > > Ah ok.  Well then, that's a problem.  Not all the libs are
> >
> > installed
> >
> > > > > there,
> > > > >
> > > > > > > only the libart and the libpng which I had to build manually.
So
> >
> > I
> >
> > > > > suppose
> > > > >
> > > > > > > I need to move these into the usr/lib and usr/include where I
> >
> > believe
> >
> > > > > the
> > > > >
> > > > > > > rest of the OS's libaries are installed.
> > > > > > >
> > > > > > > The BUILD_DIR was set to the directory where I unzipped rrd.
> > > > > > >
> > > > > > > Also, I believe the documentation on the website states the
> >
> > variable
> >
> > > > > should
> > > > >
> > > > > > > be -I not -L like you suggested..
> > > > > > >
> > > > > > > ----- Original Message -----
> > > > > > > From: <ralf-buero at kruedewagen.de>
> > > > > > > To: <groover4life at hotmail.com>
> > > > > > > Sent: Thursday, June 07, 2007 11:36 AM
> > > > > > > Subject: Re: [rrd-users] Problems with building on Suse Linux
9.0
> > > > > > >
> > > > > > > > Please take also care that all your libraries are installed
in
> >
> > the
> >
> > > > > path
> > > > >
> > > > > > > you
> > > > > > >
> > > > > > > > set in LDFLAGS. Do you have really installed them into
/lb/lib
> > > > > > > > ?
> > > >
> > > > What
> > > >
> > > > > was
> > > > >
> > > > > > > the
> > > > > > >
> > > > > > > > $BUILD_DIR when you installed the libs ?
> > > > > > > >
> > > > > > > > > Oh.  I'll try that and get back to you within the hour.
> > > > > > > > >
> > > > > > > > >> According to config.log you have set
> > > > > > > > >>  LDFLAGS="-I/lb/lib" .
> > > > > > > > >> But the lib variable must begin with a -L like
> > > > > > > > >>  LDFLAGS="-L/lb/lib"
>



More information about the rrd-users mailing list