Hello Scott and Michael! This is a long mail but I hope it's a legible description of what (I suppose) are biting you and how that can be fixed. (BTW, this mail is a reply to two different mails I've recieved describing the same problem)
"Scott G. Lewis" wrote: > No I still haven't solved the problem. Any one else out there have any ideas > yet!!!! (Ok, here we talk about building rrdtool for HP-UX 11.00 where everything goes great until that "ld: can't find library for -lrrd_private" error mesage...) Probably your Perl installation don't know that you use gcc and not the HP C compiler. Those two compilers (and their associated tools) both use different flags for controlling some vital features and the flags suitable for building with the HP C compilier are provided to gcc, causing some problems. This is how it happens: When configure is run it investigates your system and generates a number of Makefiles adopted to your system's specific environment. In order to create the Makefile for the Perl module RRDs.sl the configure program runs a small Perl program (Makefile.PL) which writes the Makefile. The grunt job of creating this Makefile is done by a function called "WriteMakefile" which is part of the ExtUtils::MakeMaker module. The latter module is part of the Perl environment itself and as the Perl environment "remembers" by the help of another module, Config, the flags etc for the C development environment it (the Perl environment) was built under. "WriteMakefile" uses those flags when building the Makefile for RRDs.sl. Think of it, it's a smart feature. It makes sure that the RRDs.sl module is built with a Makefile which uses the same compiler/linker etc flags which was used when Perl was built. (As the environment worked to build Perl, so it will work to building RRDs.sl). The problem is when you use a precompiled version of Perl, which was built in an environment completely different from the system Perl runs on. "WriteMakefile" will remember the wrong environment and not produce a proper Makefile causing errors which at times might be very misleading symptoms considering the original cause of the problem. So, how to fix this to make rrdtool build? It has to be fixed as it will not only bite your attempts to build RRDs.sl, other packages with Perl modules might fail as well. I know of two solutions: The first one is to download the entire Perl distribution and build it on your machine, using the same environment as you use for building rrdtool (gcc, gnu make etc). The second one is less disruptive and that is to edit the file Config.pm which contains the parameters which controls "WriteMakefile". It's located in /opt/perl5/lib/5.6.1/PA-RISC1.1/Config.pm (replace "/opt/perl5" with whatever you use as your "Perl root"). It's fairly obvious what the variables do but I don't remember the exact details of which to edit. However, ensure that cc is set by cc='gcc' (and not cc='cc'), osname='hpux', osvers='11.00'. (Yes, the Perl precompiled for HP-UX 11.00 had osvers='10.20' in it...) A quick way to identify what variables to change is to run configure and then check if some vital variables such as CCFLAGS, LDFLAGS etc are different in two Makefiles rrdtool-1.0.33/src/Makefile (where the variables are OK) and rrdtool-1.0.33/perl-shared/Makefile (where the variables might be goofy and must be tweaked by editing Config.pm). I've used both methods at different occasions and both helped. So, this is a Perl thing and not a rrdtool thing. The only thing Tobi can do to eliviate this is to make the configure script in advance check the Perl environment to see if it's properly setup to generate Makefiles for shared Perl modules or not and if not, provide a description of what's wrong and suggest how to fix it. (Tobi started some work with configure to fix this and some other problems but I still haven't tested those patches to configure he sent me. Being too busy... :-/ ) Did you compile the Perl on the box yourself or have you used the precompiled binary for HP-UX 11.00 available on the HP-UX porting and archiving center? If you use the precompiled version of Perl, you use a version which was built using the HP C development tools. If you've built the Perl environment from source and still see this problem, then I don't know what bites you. I admit that this situation in spite of being fully logical is remarkably counter intuitive. Normally downloading and installing a precompiled version of a software packet is a GOOD thing. And the cool feature "WriteMakefile" normally also is a good thing... Well, well, computers should be a challenge at times, shouldn't they ;-). Hope this helps and best regards /IlvJa > > I am getting the following error compiling rrdtool-1.0.33 > > ld: Can't find library for -lrrd_private > *** Error exit code 1 > > Any ideas???????? > > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > Sent: Wednesday, May 09, 2001 12:28 AM > To: [EMAIL PROTECTED]; [EMAIL PROTECTED] > Subject: compiling rrdtool on HP-UX 11.0 > > I am having the same problem(s) with the rrd_private shared library, did > you ever get over this problem or get any usefull help? > I can edit the Makefile to drop the "-a shared" from the LDDLFLAGS and > complet the "make" but I then experience other problems on the "make > install". > > thanks. > > Ian Albury > __________________________________________________ > CSC > Level 3, 151 Clarence Street, Sydney NSW 2000 > Ph: +61 2 8296 2695 Email: [EMAIL PROTECTED] > > -- > Unsubscribe mailto:[EMAIL PROTECTED] > Help mailto:[EMAIL PROTECTED] > Archive http://www.ee.ethz.ch/~slist/rrd-users > WebAdmin http://www.ee.ethz.ch/~slist/lsg2.cgi -- (Jakob Ilves) <[EMAIL PROTECTED]> {Oracle Global IT, Network Management Group} [Office as well as mobile phone: +46/8/477 3666 | Fax: +46/8/477 3572] -- Attached file removed by Listar and put at URL below -- -- Type: text/x-vcard -- Desc: Card for Jakob Ilves -- Size: 444 bytes -- URL : http://www.ee.ethz.ch/~slist/pantomime/35-jakob.ilves.vcf -- Unsubscribe mailto:[EMAIL PROTECTED] Help mailto:[EMAIL PROTECTED] Archive http://www.ee.ethz.ch/~slist/rrd-users WebAdmin http://www.ee.ethz.ch/~slist/lsg2.cgi
