スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

DBD::OracleをRPMに

既にRPMになってるやつをインストールしてもいいんだけど、OracleClientのインストールレイアウトである/opt/app/oracle …に合ってないからlibclntsh.so.11.1とlibocci.so.11.1の依存関係が解決されてないって警告がでる。なので自前でrpmbuildする。

OSはScientific Linux 6.1 x86_64。Oracleは11gR2。

とりあえずSRPMを入手。こことか。
OracleClientはインストール済み。

まず(各々の環境に合わせた)環境変数設定。

# export ORACLE_BASE=/opt/app/oracle
# export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/client_1
# export ORACLE_SID=hogesid
# export LD_LIBRARY_PATH=$ORACLE_HOME/lib
# export NLS_LANG=JAPANESE_JAPAN.AL32UTF8
# export PATH=$PATH:$ORACLE_HOME/bin

SRPMを展開してspecファイルを編集

# rpm -ivh perl-DBD-Oracle-1.27-2.el6.src.rpm
# cd /root/rpmbuild/SPECS
# vi perl-DBD-Oracle.spec

編集箇所はこんな感じ

#BuildRequires: oracle-instantclient11.2-devel ← コメントアウト
#Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))

#MKFILE=$(find /usr/share/oracle/ -name demo.mk) ← コメントアウト

%ifarch x86_64 s390x
#ORACLE_HOME=$(find /usr/lib/oracle/ -name client64 | tail -1) ← コメントアウト
ORACLE_HOME=/opt/app/oracle/product/11.2.0/client_1 ← 追加

#perl Makefile.PL -m $MKFILE INSTALLDIRS="vendor" PREFIX=%{_prefix} -V 11.2.0.2.0 ← コメントアウト
perl Makefile.PL INSTALLDIRS="vendor" PREFIX=%{_prefix} -V 11.2.0.2.0 ← 追加

最後にビルド

rpmbuild --ba --clean --rmsource --rmspec perl-DBD-Oracle.spec

この記事のトラックバックURL

http://ysmt.blog21.fc2.com/tb.php/356-7f3392d3

コメント

コメントする

管理者にだけ表示を許可する

Template Designed by DW99

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。