[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[plamo:12295] Re: Berkeley DB libraryについて



こじま@昨日から一転して今朝の東京は冷たい雨、、です。

From: Yoshinori Ariie <PBA00250@nifty.com>
Subject: [plamo:12292] Re: Berkeley DB library について 
Date: Mon, 12 Nov 2001 09:27:13 +0900
Message-ID: <20011112092703R.pba00250@nifty.com>

> さっそく rpm-4.0.2 を make してみました(Plamo2.1)。
> ./configure は以下のように通りました。
> そのあと make で、言われたようにエラーが出ました。
> やはり db 関連のようです。
> 
> [./configure]
> ..
> checking for db_create... (cached) no
> checking for db_create in -ldb-3.1... (cached) no

> [make]
> dbconfig.c:7: db3/db.h: No such file or directory
> make[2]: *** [dbconfig.lo] エラー 1
> 

これは Berkeley DB のヘッダファイルの置き場の問題ですね。Plamo 2.2 で
は Bekeley DB 3.2.9 を db_185 互換機能付でコンパイルしており、
/usr/include/db.h と /usr/include/db_185.h というヘッダファイルがある
と思います。この db.h を /usr/include/db3/db.h に symbolic link を貼っ
てやればこの部分は通るようです。

Plamo では Berkeley DB の configure スクリプトが作成する makefile のま
ま db.h と db_185.h を置いているんだけど、どうやら Red Hat 系だと 
/usr/include/db[13] というディレクトリを作って置くスタイルのようですね。

# このあたりは configure スクリプトでチェックして欲しいところ

ただ、db.h はこれで通るんだけど、もう少し先で

gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../build -I../rpmio -I../popt -I/usr/local/include -g -O2 -D_GNU_SOURCE -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wno-char-subscripts -c db3.c  -fPIC -DPIC -o .libs/db3.lo
db3.c: In function `db_fini':
db3.c:141: warning: passing arg 3 of pointer to function makes integer from pointer without a cast
db3.c:141: too many arguments to function
db3.c: In function `db_init':
db3.c:219: structure has no member named `set_func_fsync'
db3.c:237: warning: passing arg 3 of pointer to function makes integer from pointer without a cast

なんてエラーになりますね。これは lib/db3.c の中で

#if DB_VERSION_MAJOR == 3 && DB_VERSION_MINOR == 1

とマイナーバージョンをチェックしている部分が問題で、後者を 
DB_VERSION_MINOR >= 1 として Berkeley DB 3.2.9 も正しく認識させてやれ
ばいいようです。

# 一応コンパイルは通ったが動くかどうかは試していない

---------
こじま

Follow-Ups
[plamo:12335] Re: Berkeley DB library について, Yoshinori Ariie
References
[plamo:12273] Berkeley DB library について, Yoshinori Ariie
[plamo:12287] Re: Berkeley DB libraryについて, Toshihisa Tanaka
[plamo:12292] Re: Berkeley DB library について, Yoshinori Ariie

[検索ページ] [メール一覧]
Plamo ML 公開システム