DBD::Pg の make test がすんなり通るケースってあるの???[Perl]
(2016-05-17 17:52:50) by shinoda
PostgreSQL インストールして DBI と DBD::Pg の2つの Perl モジュールをインストール。
もちろん cpan でささっと・・・と行きたいが、相変わらず DBD::Pg は cpan じゃ make test が引っかかってうまくいかないな(^^;
これ、うまくいくケースってあるの?
もう、20年近く(Pg.pm の時代から)DBD::Pg インストールしてきたけど、一回もすんなり cpan コマンド一発でインストールに成功したことないんだけど(^^;
多くの人の環境でエラーになるような test なら意味ないと思うんだけど?
少なくとも、cpan の手順からだけでも make test なんか抜いてしまえばいいんじゃないかと・・・
ま、そりゃ無理なんだろうけどさ。
というわけで、いつものように make test だけ吹っ飛ばすよう手作業でインストール。
# cp /root/.cpan/sources/authors/id/T/TU/TURNSTEP/DBD-Pg-3.5.3.tar.gz ~postgres
# chown postgres ~postgres/DBD-Pg-3.5.3.tar.gz
# su - postgres
$ tar xfzp DBD-Pg-3.5.3.tar.gz
$ cd DBD-Pg-3.5.3
$ perl Makefile.PL
$ make
$ exit
# cd /usr/local/pgsql/DBD-Pg-3.5.3
# make install
で、OK。
パスを通して、一般ユーザで試しに使ってみる。
$ PATH=$PATH:$HOME/bin:/usr/local/pgsql/bin
$ export POSTGRES_HOME=/usr/local/pgsql
$ export PGDATA=$POSTGRES_HOME/data
$ export PGLIB=$POSTGRES_HOME/lib
$ export LD_LIBRARY_PATH=$POSTGRES_HOME/lib
$ perl
use DBD::Pg;
Can't load '/usr/local/lib64/perl5/auto/DBD/Pg/Pg.so' for module DBD::Pg: libpq.so.5: 共有オブジェクトファイルを開けません: そのようなファイルやディレクトリはありません at /usr/lib64/perl5/DynaLoader.pm line 190.
at - line 1.
Compilation failed in require at - line 1.
BEGIN failed--compilation aborted at - line 1.
あかんやん。「libpq.so.5: 共有オブジェクトファイルを開けません」でググったら、俺のこのブログが最初にヒットした(^^;
毎回、同じことで引っかかとるんやあ(^^;;
root で、
# chmod 755 /usr/local/pgsql
として、
$ perl
use DBD::Pg;
^D
なんのエラーも出ない。ばっちりやん(笑)
手動インストールに使ったファイル消しとこ。
$ \rm -R DBD-Pg-3.5.3
rm: 書き込み保護されたファイル 通常ファイル `DBD-Pg-3.5.3/blib/lib/DBD/Pg.pm' を削除しますか?y
rm: 書き込み保護されたファイル 通常ファイル `DBD-Pg-3.5.3/blib/lib/Bundle/DBD/Pg.pm' を削除しますか?y
$ \rm DBD-Pg-3.5.3.tar.gz
いやあ、今回は、shinodaさんの「電気ウナギ的○○」というサイトがすごく役に立った!!(笑)
コメント投稿
次の記事へ >
< 前の記事へ
TOPへ戻る
Powered by
MT4i 3.0.8