From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id CAA09984; Wed, 15 Oct 2003 02:41:49 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id CAA09474 for ; Wed, 15 Oct 2003 02:41:48 +0200 (MET DST) Received: from kurims.kurims.kyoto-u.ac.jp (kurims.kurims.kyoto-u.ac.jp [130.54.16.1]) by concorde.inria.fr (8.11.1/8.11.1) with ESMTP id h9F0f4128269 for ; Wed, 15 Oct 2003 02:41:12 +0200 (MET DST) Received: from localhost (suiren.kurims.kyoto-u.ac.jp [130.54.16.25]) by kurims.kurims.kyoto-u.ac.jp (8.9.3p2-20030924/3.7W) with ESMTP id JAA23359; Wed, 15 Oct 2003 09:40:48 +0900 (JST) To: matt@gushee.net Cc: caml-list@pauillac.inria.fr Subject: Re: [Caml-list] DBM in OCaml 3.07 In-Reply-To: <20031015001332.GB26799@swordfish> References: <20031015001332.GB26799@swordfish> X-Mailer: Mew version 1.94.2 on Emacs 21.2 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-Id: <20031015094048N.garrigue@kurims.kyoto-u.ac.jp> Date: Wed, 15 Oct 2003 09:40:48 +0900 From: Jacques Garrigue X-Dispatcher: imput version 20000228(IM140) X-Loop: caml-list@inria.fr X-Spam: no; 0.00; caml-list:01 3.07:01 jacques:01 gushee:01 gushee:01 3.07:01 'configure':01 ndbm:01 ndbm:01 3.06,:01 incompatible:01 3.06.:01 3.06:01 hash:01 endian:01 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk From: Matt Gushee > I built and installed OCaml 3.07 for the first time yesterday, and > noticed a couple of issues with the Dbm module. First of all, when I ran > 'configure', I got an error message saying that NDBM support was not > available. Now, strictly speaking that is true: I am running Debian > GNU/Linux 3.0 with GDBM, not NDBM. But I had DBM working under OCaml > 3.06, and as far as I can remember no special measures were required to > build it. [...] > The second issue I encountered is that the databases produced by the > 3.07 version of Dbm are incompatible with those created under 3.06. E.g. > > $ file /var/lib/fontdb/ttf.db # old file, created under 3.06 > /var/lib/fontdb/ttf.db: Berkeley DB 1.85 \ > (Hash, version 2, native byte-order) > > $ file /var/tmp/spam.dir # new files, created under 3.07 > /var/tmp/spam.dir: GNU dbm 1.x or ndbm database, little endian > $ file /var/tmp/spam.pag > /var/tmp/spam.pag: GNU dbm 1.x or ndbm database, little endian This is strange enough: apparently under ocaml 3.06 you were using Berkeley DB rather than gdbm. This is coherent with the configure script, which tries Berkeley DB (db1) before gdbm. Now, for some reason Berkeley DB seems not to work on your system now (you could try to configure ocaml 3.06 again to see that). So I think the change is in your system not in ocaml itself. Did you remove some library? There seems to be another problem with gdbm-ndbm.h being ignored if there is no gdbm_compat library, which might have to be fixed, but I'm no gdbm exert. gdbm-ndbm.h was not checked on ocaml 3.06, but it has lower priority than ndbm.h anyway. Jacques Garrigue ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners