0

DBD::OracleモジュールをCygwinにインストールしたい。で Oracle Instant Client (ver 12.1) をダウンロードしましたC:\Oracle\instantclient_12_1。SDK と SQLPlus もダウンロードして、instantclient_12_1 ディレクトリに展開しました。ORACLE_HOME パスを としてexport ORACLE_HOME=/cygdrive/c/Oracle/instantclient_12_1、LD_LIBRARY_PATH を として設定しましexport LD_LIBRARY_PATH=/cygdrive/c/Oracle/instantclient_12_1/libた。パッケージをインストールしようとすると、次のようになります。

I'm having trouble finding your Oracle version number... trying harder

WARNING: I could not determine Oracle client version so I'll just
default to version 8.0.0.0. Some features of DBD::Oracle may not work.
Oracle version based logic in Makefile.PL may produce erroneous results.
You can use "perl Makefile.PL -V X.Y.Z" to specify a your client version.

Oracle version 8.0.0.0 (8.0)
DBD::Oracle no longer supports Oracle client versions before 9.2
 Try a version before 1.25 for 9 and 1.18 for 8! at Makefile.PL line 271.
Warning: No success on command[/usr/bin/perl Makefile.PL]
'YAML' not installed, will not store persistent state
  PYTHIAN/DBD-Oracle-1.66.tar.gz
  /usr/bin/perl Makefile.PL -- NOT OK
Running make test
  Make had some problems, won't test
Running make install
  Make had some problems, won't install

インストーラーがバージョンを検出できないのはなぜですか? モジュールを正常にインストールするにはどうすればよいですか?

編集:以下の提案に従って、試してみperl Makefile.PL -V 12.1.0ました。私は次のように出力を得ました:

Installing on a cygwin, Ver#1.7
Using Oracle in /cygdrive/c/Oracle/instantclient_12_1

            If sqlplus failed due to a linker/symbol/relocation/library error or similar problem
            then it's likely that you've not configured your environment correctly.
            Specifically, your PATH environment variable
            set to include the directory containing the Oracle libraries.

Forcing Oracle version to be treated as 12.1.0
Oracle version 12.1.0 (12.1)
Using OCI directory 'sdk'

client_version=12.1


DEFINE= -Wall -Wno-comment -DUTF8_SUPPORT -DORA_OCI_VERSION=\"12.1.0\" -DORA_OCI_102 -DORA_OCI_112


Checking for functioning wait.ph


System: perl5.014004 cygwin_nt-6.1 yaakov04 1.7.18(0.26353) 2013-03-07 19:25 x86_64 cygwin
Compiler:   gcc -O3 -DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ -fno-strict-aliasing -pipe -fstack-protector
Linker:     /usr/bin/ld
Sysliblist:

Checking if your kit is complete...
Looks good
LD_RUN_PATH=/cygdrive/c/Oracle/instantclient_12_1/lib:/cygdrive/c/Oracle/instantclient_12_1/rdbms/lib
Using DBD::Oracle 1.66.
Using DBD::Oracle 1.66.
Using DBI 1.623 (for perl 5.014004 on cygwin-thread-multi) installed in /usr/lib/perl5/vendor_perl/5.14/x86_64-cygwin-threads/auto/DBI/
Generating a GNU-style Makefile
Writing Makefile for DBD::Oracle
Writing MYMETA.yml and MYMETA.json

しかし、その後make, make test and make install、モジュールはまだ正しくインストールされておらず、これを使用してスクリプトを実行できません ( make test37/38 の失敗ケースが返されました)。先に進む方法がわかりません。

4

2 に答える 2

0

指示に従って、次のように言ってみましたか。

perl Makefile.PL -V 12.1.0

?

于 2013-11-26T04:12:24.080 に答える