[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: compilation problem/fix with gdbm




> I have just installed a brand new machine with Slackware 96 Linux
> and tried to compile the latest zmailer-2.99.41-961111.tar.gz.
> The Slackware comes only with the GDBM flavour of DBM. Only gdbm.h
> is available. If the zmailer config.h option HAVE_NDBM_H is not set
> the GDBM conditional compilation is used. The usage of gdbm_open()
> is colliding with the prototypes from the /usr/include/gdbm.h.
> In file utils/makendbm/ndbmlook.c the line:
> 
>    dbmfile = gdbm_open(dbasename, 0, GDBM_READER, 0);

	Oops..  (I don't have gdbm, only BSD db)

> will not compile - to few arguments - missing fatal() function pointer.
> What should be there is:
> 
>    dbmfile = gdbm_open(dbasename, 0, GDBM_READER, 0, 0);

	Right, actually that last one is NULL, not 0.

> I fixed my build by installing gdbm-1.7.3 and placing ndbm.h and dbm.h
> in /usr/local/include and rerunning configure. This could have been
> avoided if we had correct calls to gdbm_open().

	The whole 'ndbmlook' needs a workover to make it alike
	the 'makendbm' so that all different DB-formats can co-
	exist in the same program.

> cheers - Peter
> -- 
> Peter Ziobrzynski, pzi@netmediatech.com
> netMedia Technology Inc.
> 204 Richmond St. #300, Toronto Ontario, Canada, M5V-1V6
> tel.(416) 596-8520x242, fax.(416) 596-8610

	/Matti Aarnio <mea@nic.funet.fi>