*BSD News Article 92334


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!munnari.OZ.AU!news.mel.connect.com.au!news.mel.aone.net.au!news.netspace.net.au!news.mira.net.au!inquo!news.uoregon.edu!tezcat!cam-news-hub1.bbnplanet.com!news.bbnplanet.com!howland.erols.net!newsxfer.itd.umich.edu!sol.ctr.columbia.edu!sirius.ctr.columbia.edu!wpaul
From: wpaul@ctr.columbia.edu (Bill Paul)
Newsgroups: comp.unix.bsd.freebsd.misc
Subject: Re: Problems with GDBM, PHP/FI and Apache under FreeBSD
Date: 29 Mar 1997 18:36:17 GMT
Organization: Columbia University Center for Telecommunications Research
Lines: 41
Message-ID: <5hjnf1$bfu@sol.ctr.columbia.edu>
References: <333C9167.622D@ludd.luth.se>
NNTP-Posting-Host: sirius.ctr.columbia.edu
X-Newsreader: TIN [version 1.2 PL2]
Xref: euryale.cc.adfa.oz.au comp.unix.bsd.freebsd.misc:38061

Daring to challenge the will of the almighty Leviam00se, Joachim Strömbergson
(watchman@ludd.luth.se) had the courage to say:

: Tja!

: I'm trying to build PHP/FI as a module for Apache. During the execution
: of the 'install' script of PHP/FI I get a warning that no dbm is
: installed, and that I should have added at least GDBM for better
: performance.

Well, as a matter of fact, FreeBSD does have a database: it has Berkeley DB
built into libc. Berkeley DB also supports a compatibility interface that
makes it look like the older ndbm package found on SunOS and other places.
In order to use it, you need to #include <db.h>. Berkeley DB itself supports
a couple of different database types including hash and b-tree.

If this package of yours supports ndbm, then it should be possible to
hack it to work with the ndbm compat interface in Berkeley DB. You just
need to make it find the db.h header.

: Now, I have the ports collection in my FreeBSD 2.2.1 system and have
: performed the 'make install' routine, what it seemes successfully
: installed the GDBM on my system. Even though, it seemes that GDBM isn't
: registered after all.

I don't know what you mean by 'registered.' If the library in installed,
it should be lurking somewhere under /usr/local/lib. Its header file(s)
should be in /usr/local/include. Check there: if you see them, the it
was installed correctly. That said, you may need to hack the Makefile
for your package so that it knows to look for the library in /usr/local.

-Bill

--
=============================================================================
-Bill Paul            (212) 854-6020 | System Manager, Master of Unix-Fu
Work:         wpaul@ctr.columbia.edu | Center for Telecommunications Research
Home:  wpaul@skynet.ctr.columbia.edu | Columbia University, New York City
=============================================================================
  "Now, that's "Open" as used in the sentence "Open your wallet", right?"
=============================================================================