
DB_Fileモジュールがインストールできません。
環境はturbolinux server10でrpm -qa | grep db したところ、
db4-4.2.52-6がインストールされているようです。
そこでDB_Fileのインストールを試みたところ、以下のような
エラーとなってしまいます。
Writing Makefile for DB_File
cp DB_File.pm blib/lib/DB_File.pm
AutoSplitting blib/lib/DB_File.pm (blib/lib/auto/DB_File)
cc -c -I/usr/local/BerkeleyDB/include -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE
_PIDS -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_S
OURCE -D_FILE_OFFSET_BITS=64 -O2 -g -march=i586 -DVERSION=\"1.814\" -DXS_VERSI
ON=\"1.814\" -fPIC "-I/usr/lib/perl5/5.8.5/i386-linux-thread-multi/CORE" -D_NOT
_CORE -DmDB_Prefix_t=size_t -DmDB_Hash_t=u_int32_t version.c
version.c:30:16: db.h: No such file or directory
make: *** [version.o] Error 1
/usr/bin/make -- NOT OK
Running make test
Can't test without successful make
Running make install
make had returned bad status, install seems impossible
なにかversion.cが何なのかが分からなくて困っています。
そもそも、DB_Fileはperlに同梱されているものと思っていましたが、、、
何が足りないのでしょう?教えてください。よろしくお願いします。
No.2ベストアンサー
- 回答日時:
英語だからということでしり込みしてしまうかもしれませんが、
READMEくらいは目を通しましょうよ。
If you get an error like this:
cc -c -I/usr/local/include -Dbool=char -DHAS_BOOL
-O2 -DVERSION=\"1.64\" -DXS_VERSION=\"1.64\" -fpic
-I/usr/local/lib/perl5/i586-linux/5.00404/CORE -DmDB_Prefix_t=size_t
-DmDB_Hash_t=u_int32_t DB_File.c
DB_File.xs:101: db.h: No such file or directory
This symptom can imply:
2. You do have Berkeley DB installed, but it isn't in a standard place.
Solution: Edit config.in and set the LIB and INCLUDE variables to point
to the directories where libdb.a and db.h are installed.
とありますよ。
DB_Fileモジュールのソースアーカイブを展開した
ディレクトリに config.inというファイルがありますので、
# 1. Where is the file db.h?
#
# Change the path below to point to the directory where db.h is
# installed on your system.
INCLUDE= /usr/local/BerkeleyDB/include
#INCLUDE= /usr/local/include
#INCLUDE= /usr/include
# 2. Where is libdb?
#
# Change the path below to point to the directory where libdb is
# installed on your system.
LIB= /usr/local/BerkeleyDB/lib
#LIB= /usr/local/lib
#LIB= /usr/lib
この辺を質問者さんのシステムにあわせて
書き換えればいいのではないでしょうか?
参考URL:http://search.cpan.org/src/PMQS/DB_File-1.814/RE …
うまくいきました!
たしかにREADMEにしっかり書いてありました、、、
以後気をつけます。
助かりました。ありがとうございました。
No.1
- 回答日時:
> version.c:30:16: db.h: No such file or directory
> なにかversion.cが何なのかが分からなくて困っています。
問題は version.cじゃなくてそこでincludeしようとしている
db.hではないでしょうか?
インストールしようとしているモジュールで使用するライブラリは
ちゃんと存在していますか?
あったとして、標準でないディレクトリにあったりしませんか?
メッセージを見たところでは
/usr/local/BerkeleyDB/include
ここにあるものと推測している気配ですが、ここにありますか?
この回答への補足
なるほど。
ご指摘頂いた通り、/usr/local/BerkeleyDB/include は存在していません。
別の場所を指定するには、どうすれば良いでしょう?
どこに指定すればよいですか?
すみません、もう一度教授願います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Strawberry Perl for Windows ...
-
INDIRECT 横に再度抽出したい
-
Perlのエラーについてご教授く...
-
bashスクリプト
-
perlで2次元配列をサブルーチ...
-
Perlの全角スペース 文字化け?
-
perl の open について教えてく...
-
Perl言語について。
-
ファイルをディレクトリ分配の...
-
アルファベットに付いて質問し...
-
#!/usr/bin/perlで書きだしたCG...
-
perlのflock関数でロックをかけ...
-
AI sisterとは、偽物の人ですか?
-
ファイルアイコンの左下に緑の□...
-
perlプログラミング 空白行削除
-
perlでリテラル値はメモリにど...
-
Perlで時間の計算
-
perlについて
-
perlのrequireの動き方について...
-
perlの構文でカンマの意味が分...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Perl+DBD::Oracleのエラーがわ...
-
python
-
python 環境構築について
-
@INCにrequireされたファイルが...
-
use lib qw(変数名);は無理?
-
perl DBD::Pg インストールでエ...
-
Net::SSH::Perlについて
-
エラー内容がわかりません。Con...
-
Jcode.pmについて
-
英文でperlの文法などを説明し...
-
DBIをCPANからインストール時に...
-
DB_Fileモジュールインストール...
-
\\* の意味が分かりません。
-
SOAP::Liteを利用したい!
-
Pg.pmモジュールがロードできない
-
CygwinでPerlのCSV_XSを実行する
-
@INCにセットされたディレクト...
-
HTML::FillInFormが使えない(...
-
例外処理のフローチャートの記...
-
「デバイスは PRN を初期化でき...
おすすめ情報