Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re^2: Having trouble trying to use DBD::Oracle with ActivePerl 5.8.8...

by willjones (Sexton)
on Aug 27, 2008 at 10:35 UTC ( #707125=note: print w/replies, xml ) Need Help??


in reply to Re: Having trouble trying to use DBD::Oracle with ActivePerl 5.8.8...
in thread Having trouble trying to use DBD::Oracle with ActivePerl 5.8.8...

Well, I don't have an ORA_HOME environment variable set at all, but I do have an ORACLE_HOME environment variable. It is set to C:\oracle\product\10.1.0\Client_1 Then in my System variables "Path" the very first thing in the path is %ORACLE_HOME%\bin; ... Then in my User Variables (when I right-click on My Computer->Properties->Advanced->Environment Variables) at the top it shows the value of "PATH" beginning with C:\oracle\product\10.1.0\Client_1\bin; (Again as the very first thing in the path.) I took a look at the files in that directory and there are 81 dlls most starting with "ora.." so it seems like it should be the right place. I have Oracle - OraClient10g_home1 installed. If I open a command prompt and type set the Path var shows "C:\oracle\product\10.1.0\Client_1\bin" as the first thing in it. I also have Toad installed by the way and it pulls datasource options from my tnsnames.ora file to get datasource defs. I am able to submit queries with no problem on Toad. I think Toad requires an Oracle client to be installed correctly in order to work.

I noticed when I open PPM and type DBI it looks like I have two installed. First it shows DBI site 1.601 and then it shows DBI perl 1.58 (where site and perl are under the Area column). There are also 3 other versions available two for 1.602 and one for 1.604. Not sure if this is related to things, but I was thinking DBD-Oracle was dependent on DBI. I tried uninstalling both DBIs but it would only let me uninstall the 1.601 one. After this I clicked on the 1.58 one to be upgraded and it made a new DBI this time 1.602. (The 1.58 one was still showing as installed also.) I uninstalled and re-installed with trouchelle's DBD-Oracle. Still no luck... (Thanks so much to everyone for the pointers so far. Let me know if you have any more ideas.)
  • Comment on Re^2: Having trouble trying to use DBD::Oracle with ActivePerl 5.8.8...

Replies are listed 'Best First'.
Re^3: Having trouble trying to use DBD::Oracle with ActivePerl 5.8.8...
by Zenshai (Sexton) on Aug 27, 2008 at 15:30 UTC
    Ok, so i guess its not an oracle client problem.

    Have you tried to look at your PPM areas (>ppm area list)? If there is more than 1, doing '>ppm area sync' might solve the problem. This will make some copies of installed modules so they (theoretically) can be run from any of the install areas.

    If that's not it, I'm out of ideas sorry. :(
      Well, tried PPM area sync. Unfortunately it still didn't work after this. When I run this from the command prompt by typing in perl oracle_test.cgi I get a pop-up window that says, "This application has failed to start because OCI.dll was not found. Re-installing the application may fix this problem." After clicking OK it spits out the html for the error message I shared earlier. I'm not sure why it wouldn't be able to find that file because I have the following line at the top of my code $ENV{NLS_NCHAR}="UTF8"; $ENV{LD_LIBRARY_PATH} = "$ORACLE_LIB:$ENV{LD_LIBRARY_PATH}"; $ENV{ORACLE_HOME} = "$ORACLE_HOME"; where $ORACLE_HOME and $ORACLE_LIB define the paths to my Oracle directory. I read somewhere that you have to compile DBD-Oracle for a specific Oracle Client target. I saw this http://search.cpan.org/src/PYTHIAN/DBD-Oracle-1.22/README.win32.txt Is DBD-Oracle from ActiveState and trouchelle compiled for Oracle Instant Client 11.1.0.6.0 ? I am using Oracle Client 10.1.0g. Could this be my problem? Maybe I should try downloading a different version of Oracle Client? Or is there a way to tell what version a particular DBD-Oracle was compiled for?
        Install msys, mingw, and nmake, and compile/install it yourself from source.

        Does your PATH include the directory where OCI.dll is? On Windows, I do not have any ORA_HOME or ORACLE_HOME or LD_LIBRARY_PATH set (though TNS_ADMIN is set), but PATH includes the directory where OCI.dll is, and the default DBD::Oracle that came w/ActiveState works fine.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://707125]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (7)
As of 2020-04-07 07:25 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    The most amusing oxymoron is:
















    Results (42 votes). Check out past polls.

    Notices?