[#36686] 1.1 < 61.1 - 60.0 — Shin-ichiro HARA <sinara@...>

原です。

19 messages 2002/12/06

[#36770] www.ruby-lang.orgリニューアル準備のお知らせ — TADA Tadashi <sho@...>

ruby-lang.orgのwebmasterチームでは、タイムリーな情報提供と使いやすい

11 messages 2002/12/16

[ruby-list:36744] Re: DBM

From: OHARA Shigeki <os@...>
Date: 2002-12-12 12:02:28 UTC
List: ruby-list #36744
大原です。

From: WATANABE Hirofumi <eban@os.rim.or.jp>
Subject: [ruby-list:36743] Re: DBM
Message-ID: <690-Thu12Dec2002184427+0900-eban@os.rim.or.jp>
Date: Thu, 12 Dec 2002 18:44:34 +0900

> > DBM ですが、ruby の make 時に gdbm がインストールされていると、
> > gdbm の方の NDBM 互換インターフェイスの方を優先して
> > 利用するようになっていると思います。
> 
> ということはRuby 1.6ですよね?
> 1.7だとgdbmは一番最後に試すし、--wtih-dbm-typeも使えるし。

すいません、最初にバージョンを言うべきでしたね。
ruby 1.6.8 (2002-12-09) [i386-bsdi4.1]
です。

> > なので、私はとりあえず ext/dbm/extconf.rb を手で書き換えて
> > gdbm の方を探さないようにしてリンクしないようにしているのですが、
> > できれば configure のオプションなどで指定できればと思うのですが、
> > 何か良い方法はあるでしょうか?
> 
> 1.7のextconf.rbをそのまま1.6にもってきて
> dbm.cの#include <ndbm.h>を#include DBM_HDRに変更すれば
> --with-dbm-type-gdbmのように指定できます。

1.7 では対応できていたんですね。

が、こんな感じにしないとうまくいきませんでした。

--- extconf.rb.old	Thu Dec 12 20:50:20 2002
+++ extconf.rb	Thu Dec 12 20:49:02 2002
@@ -22,6 +22,7 @@
     $dbm_conf_db_prefix = "__db_n"
     hsearch = "-DDB_DBM_HSEARCH "
   when "gdbm"
+    have_library(db, db_prefix("dbm_open"))
     $dbm_conf_have_gdbm = true
   end
 

これで、
--with-dbm-type=gdbm で gdbm の利用の有無を制御できるようになりました。


で、これは 1.6.8 にバックポートされるでしょうか?

----
OHARA Shigeki (大原 重樹) <os@iij.ad.jp>

In This Thread