Trouble installing DBD-Oracle-1.23 on Cygwin

Discussion in 'Perl Misc' started by david.karr, Jun 30, 2010.

  1. david.karr

    david.karr Guest

    I'm on Cygwin 1.5.25, Perl 5.10, and I'm trying to install DBI-1.608
    and DBD-Oracle-1.23. The DBI installation went ok, but I'm having
    trouble with the DBD portion. I don't have Oracle installed locally
    (I mostly only use SQuirreL for connecting to my database). I tried
    following the instructions in the DBI and DBD READMEs.

    I installed the instantclient basic, sdk, and even sqlplus in c:/
    oracle/instantclient_11_2 (the DBD README refers to "11_1", but I
    would assume nothing is checking for that name).

    The DBD README doesn't mention setting ORACLE_HOME, but it appears I
    have to set it to the "instantclient" directory.

    I set my ORACLE_DSN and ORACLE_USERID to refer to the database my
    first script will be connecting to.

    Supposedly it helps if I specify the client API version on the "perl"
    command line, but I'm not certain exactly what that number would be.
    I tried using both "perl Makefile.PL -V 10.2.0.4" (database version)
    and "perl Makefile.PL -V 11.1.0.7" (driver version), but my results
    are the same.

    The "perl" and "make" lines appeared to complete without serious
    complaint, but when I ran "make test", I got the following:

    -----------------------
    /usr/bin/perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(0,
    'blib/lib', 'blib/arch')" t/*.t
    t/01base..................# Test loading DBI, DBD::Oracle and version
    t/01base..................1/6
    # Failed test 'install_driver'
    # at t/01base.t line 22.
    Failed to load Oracle extension and/or shared libraries:
    install_driver(Oracle) failed: Can't load '/c/frameworks/DBD-
    Oracle-1.23/blib/arch/auto/DBD/Oracle/Oracle.dll' for module
    DBD::Oracle: No such file or directory at /usr/lib/perl5/5.10/i686-
    cygwin/DynaLoader.pm line 201.
    at (eval 6) line 3
    Compilation failed in require at (eval 6) line 3.
    -----------------

    That file DOES exist, and it's permissions are 755.

    Any ideas? Is there a better place to ask about this?
    david.karr, Jun 30, 2010
    #1
    1. Advertising

  2. In article <>, says...

    >Failed to load Oracle extension and/or shared libraries:
    >install_driver(Oracle) failed: Can't load '/c/frameworks/DBD-
    >Oracle-1.23/blib/arch/auto/DBD/Oracle/Oracle.dll' for module
    >DBD::Oracle: No such file or directory at /usr/lib/perl5/5.10/i686-
    >cygwin/DynaLoader.pm line 201.
    > at (eval 6) line 3
    >Compilation failed in require at (eval 6) line 3.
    >-----------------
    >
    >That file DOES exist, and it's permissions are 755.


    Try ldd on this file to see, wether all DLLs could be found. You may
    need to add the directory of the Oracle-Client (that's where oci.dll
    resides) to the PATH variable. Here is what I get:

    ldd blib/arch/auto/DBD/Oracle/Oracle.dll
    ntdll.dll => /cygdrive/c/Windows/SysWOW64/ntdll.dll (0x77710000)
    kernel32.dll => /cygdrive/c/Windows/syswow64/kernel32.dll (0x76c40000)
    KERNELBASE.dll => /cygdrive/c/Windows/syswow64/KERNELBASE.dll (0x76ad0000)
    cygwin1.dll => /usr/bin/cygwin1.dll (0x61000000)
    ADVAPI32.DLL => /cygdrive/c/Windows/syswow64/ADVAPI32.DLL (0x76fd0000)
    msvcrt.dll => /cygdrive/c/Windows/syswow64/msvcrt.dll (0x75720000)
    sechost.dll => /cygdrive/c/Windows/SysWOW64/sechost.dll (0x75590000)
    RPCRT4.dll => /cygdrive/c/Windows/syswow64/RPCRT4.dll (0x75b00000)
    SspiCli.dll => /cygdrive/c/Windows/syswow64/SspiCli.dll (0x75280000)
    CRYPTBASE.dll => /cygdrive/c/Windows/syswow64/CRYPTBASE.dll (0x75270000)
    cyggcc_s-1.dll => /usr/bin/cyggcc_s-1.dll (0x67f00000)
    cygssp-0.dll => /usr/bin/cygssp-0.dll (0x67280000)
    OCI.dll => /usr/local/oracle/OCI.dll (0x10000000)
    MSVCR71.dll => /cygdrive/c/Windows/system32/MSVCR71.dll (0x7c340000)
    PSAPI.DLL => /cygdrive/c/Windows/syswow64/PSAPI.DLL (0x76c30000)
    cygperl5_10.dll => /usr/bin/cygperl5_10.dll (0x71520000)
    cygcrypt-0.dll => /usr/bin/cygcrypt-0.dll (0x30000)

    Cheers

    Heinrich

    --
    Heinrich Mislik
    Zentraler Informatikdienst der Universitaet Wien
    A-1010 Wien, Universitaetsstrasse 7
    Tel.: (+43 1) 4277-14056, Fax: (+43 1) 4277-9140
    Heinrich Mislik, Jul 1, 2010
    #2
    1. Advertising

  3. david.karr

    david.karr Guest

    On Jul 1, 2:58 am, (Heinrich Mislik)
    wrote:
    > In article <..com>, says...
    >
    > >Failed to load Oracle extension and/or shared libraries:
    > >install_driver(Oracle) failed: Can't load '/c/frameworks/DBD-
    > >Oracle-1.23/blib/arch/auto/DBD/Oracle/Oracle.dll' for module
    > >DBD::Oracle: No such file or directory at /usr/lib/perl5/5.10/i686-
    > >cygwin/DynaLoader.pm line 201.
    > > at (eval 6) line 3
    > >Compilation failed in require at (eval 6) line 3.
    > >-----------------

    >
    > >That file DOES exist, and it's permissions are 755.

    >
    > Try ldd on this file to see, wether all DLLs could be found. You may
    > need to add the directory of the Oracle-Client (that's where oci.dll
    > resides) to the PATH variable. Here is what I get:


    Putting the directory with oci.dll on the PATH is what did it.
    Thanks. I should have thought of that.
    david.karr, Jul 1, 2010
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Philip White
    Replies:
    0
    Views:
    960
    Philip White
    Jan 22, 2004
  2. Glenn
    Replies:
    3
    Views:
    99
    Glenn
    Dec 5, 2004
  3. Feyruz
    Replies:
    4
    Views:
    2,100
    Sherm Pendley
    Oct 14, 2005
  4. Replies:
    0
    Views:
    105
  5. Jim Cochrane
    Replies:
    0
    Views:
    104
    Jim Cochrane
    Aug 25, 2007
Loading...

Share This Page