pcp
[Top] [All Lists]

Re: PCPMON 1.3.0 released

To: Michal Kara <lemming@xxxxxxxxxxxxxxxxxxx>
Subject: Re: PCPMON 1.3.0 released
From: Mark Goodwin <markgw@xxxxxxx>
Date: Thu, 9 Nov 2000 10:29:40 +1100 (EST)
Cc: pcp@xxxxxxxxxxx
In-reply-to: <20001108080930.A2458@arthur.plbohnice.cz>
Sender: owner-pcp@xxxxxxxxxxx
On Wed, 8 Nov 2000, Michal Kara wrote:

> > So I have both gd and png, but configure still failed.
> 
>   But is there the gdImagePng function? There are more versions of gd library.
> The older could do only GIFs but in the newer versions GIF creation capability
> was dropped due to (well known) licensing problems and now it can create PNGs.
> Please send me config.log from the failed attempt.

gdImageGif is there, but gdImagePng is not. I would suggest you add
conditional configure stuff to use gdImageGif if gdImagePng is not
present. If the gif function is in a shared lib you happen to be linking
with, then it's not your licensing problem ...

Here's the relevant bit of the log:

...
configure:2150: checking for gdImagePng in -lgd
configure:2169: gcc -o conftest -g -O2 -Wall   conftest.c -lgd   -lz -lxml 
-lpcp -lgd -lpng 1>&5
/tmp/ccOsX1IY.o: In function `main':
/home/markgw/isms/pcpmon/pcpmon-1.3.0/configure:2165: undefined reference to 
`gdImagePng'
collect2: ld returned 1 exit status
configure: failed program was:
#line 2158 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error.  */
/* We use char because int might match the return type of a gcc2
    builtin and then its argument prototype would still apply.  */
char gdImagePng();

int main() {
gdImagePng()
; return 0; }

> 
> > "./configure --disable-gd; make" I now get errors with missing xml headers:
> >
> This suggests you have 1.x version of libxml library. New PCPMON now utilizes
> version 2.x. It seems I will have either improve configure to not accept 1.x
> version or make PCPMON able to cope with both versions of the library :(

Is libxml v2 available somewhere? 

> 
> > Also, on your PCPMON homepage at
> >     http://k332.feld.cvut.cz/~lemming/projects/pcpmon.html
> > you asked "if you create RPMs, let me know". You can set up your
> > src tree using a tool called "gensrc", and then easily build both
> > src and bin RPMs. The gensrc home page is http://oss.sgi.com/projects/gensrc
> 
>   OK, thanks. Will this handle RPM dependencies too?

RPM picks up all shared lib deps automatically. In addition, you can
add dependencies on specific packages in your spec. If needed, you can
also specify a dependency on a particular version of a package (or range of
versions).

Here's a simple gensrc example:

    sherman 16% gensrc pcpmon
    gensrc: done. See "pcpmon/Porting-Guide" for further instructions.
    sherman 17% cd pcpmon
    sherman 18% ./Makepkgs 

    == configure, log is Logs/configure

    == default, log is Logs/default

    == dist, log is Logs/dist
    Wrote: /home/markgw/pcpmon/build/rpm/pcpmon-1.0.0-1.src.rpm
    Wrote: /home/markgw/pcpmon/build/rpm/pcpmon-1.0.0-1.i386.rpm
    Wrote: /home/markgw/pcpmon/build/tar/pcpmon-1.0.0.tar.gz

    sherman 19% head build/rpm/pcpmon.spec.in 
    #
    Name: @package_name@
    Version: @package_version@
    Release: @package_release@
    Distribution: @package_distribution@
    Packager: @package_builder@ 
    BuildRoot: @build_root@ 
    Source: @package_name@-@package_version@.src.tar.gz

    Summary: PCPMON is a package for doing something useful.
    ...

You should edit the VERSION file to specify the version of the package
to build. To tell RPM that pcpmon requires pcp, gd-devel with version
greater than 1.3 and libxml-devel with version greater than 1.8, edit
build/rpm/pcpmon.spec.in and add something like the following after the
"Source:" tag :-

Requires: pcp >= 2.1.8, gd-devel > 1.3, libxml-devel > 1.8


    -- Mark


<Prev in Thread] Current Thread [Next in Thread>