Mac OS X 10.8 で perl モジュール DBD::Oracle を使いたいです。DBI は CPAN からインストールしました。Oracle インスタント クライアント 11.2 (basic、sqlplus、および jdk) をダウンロードしました。/usr/local/oracle に解凍しました。
$ ls /usr/local/oracle/instantclient_11_2/
BASIC_README libnnz11.dylib ojdbc6.jar
SQLPLUS_README libocci.dylib.11.1 sdk
adrci libociei.dylib sqlplus
genezi libocijdbc11.dylib uidrvci
glogin.sql libsqlplus.dylib xstreams.jar
libclntsh.dylib libsqlplusic.dylib
libclntsh.dylib.11.1 ojdbc5.jar
次に、DBD::Oracle をインストールしました。DBD::Oracle を使用しようとすると、エラーが発生します。
install_driver(Oracle) failed: Can't load '/Library/Perl/5.12/darwin-thread-multi-
2level/auto/DBD/Oracle/Oracle.bundle' for module DBD::Oracle:
dlopen(/Library/Perl/5.12/darwin-thread-multi-2level/auto/DBD/Oracle/Oracle.bundle, 1):
Library not loaded: /ade/b/2649109290/oracle/rdbms/lib/libclntsh.dylib.11.1
Referenced from: /Library/Perl/5.12/darwin-thread-multi-
2level/auto/DBD/Oracle/Oracle.bundle
Reason: image not found at /System/Library/Perl/5.12/darwin-thread-multi-
2level/DynaLoader.pm line 204.
私は DYLD_LIBRARY_PATH=/usr/local/oracle/instaclient_11_2 を持っています。何が間違っているのかわかりません。
解決済み: sqlplus を実行しようとしたときに同じエラーが発生しました。Oracle クライアント ディレクトリをグローバル PATH 変数に追加しましたが、現在は機能しています。
彼らがこのチュートリアルで同じことをしたのを見た: http://www.janhellevik.no/?p=521