Page 1 of 2 12 Last
  • Jump to page:
    #1
  1. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2008
    Posts
    38
    Rep Power
    6

    DBD::Oracle 1.24


    Hello Guys,

    Where can I get DBD::Oracle version 1.24.

    Currently I guess the latest is 1.56, however am looking for the older one for my compilation as other dependent sources are quite old like DBI is 1.56 and the current DBI is at 1.63 level.

    Please advise.

    Regards - Neuron
  2. #2
  3. !~ /m$/
    Devshed Specialist (4000 - 4499 posts)

    Join Date
    May 2004
    Location
    Reno, NV
    Posts
    4,221
    Rep Power
    1809
    You can get it from CPAN. Using the pulldown, you can select the current, or any past release.

    http://search.cpan.org/~pythian/DBD-Oracle-1.24b/
  4. #3
  5. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2008
    Posts
    38
    Rep Power
    6
    Thanks Keath.

    Am trying to build DBD:Oracle and facing following issue:

    Installing on a solaris, Ver#2.10
    Using Oracle in /ora11gR2/app/ora11gR2/product/11.2.0/client_1
    DEFINE _SQLPLUS_RELEASE = "1102000100" (CHAR)
    Oracle version 11.2.0.1 (11.2)
    Unable to locate an oracle.mk, proc.mk or other suitable *.mk
    file in your Oracle installation. (I looked in
    /ora11gR2/app/ora11gR2/product/11.2.0/client_1/rdbms/demo/demo_rdbms32.mk
    /ora11gR2/app/ora11gR2/product/11.2.0/client_1/precomp/demo/proc/proc.mk
    /ora11gR2/app/ora11gR2/product/11.2.0/client_1/precomp/demo/proc/demo_proc.mk
    /ora11gR2/app/ora11gR2/product/11.2.0/client_1/proc/lib/proc.mk
    /ora11gR2/app/ora11gR2/product/11.2.0/client_1/proc16/lib/proc16.mk
    /usr/share/oracle/11.2/client/demo.mk
    /usr/share/oracle/11.2/client64/demo.mk under /ora11gR2/app/ora11gR2/product/11.2.0/client_1)

    The oracle.mk (or demo_rdbms.mk) file is part of the Oracle
    RDBMS product. The proc.mk (or demo_proc.mk) file is part of the Oracle Pro*C product. You need to build DBD::Oracle on a
    system which has one of these Oracle components installed.
    (Other *.mk files such as the env_*.mk files will not work.)
    Alternatively you can use Oracle Instant Client.

    In the unlikely event that a suitable *.mk file is installed somewhere non-standard you can specify where it is using the -m option:
    perl Makefile.PL -m /path/to/your.mk

    See the appropriate README file for your OS for more information and some alternatives.
    at Makefile.PL line 1095.


    Am I missing anything here? The above .mk files are not present in my ORACLE_HOME.

    TIA.

    Regards...
  6. #4
  7. !~ /m$/
    Devshed Specialist (4000 - 4499 posts)

    Join Date
    May 2004
    Location
    Reno, NV
    Posts
    4,221
    Rep Power
    1809
  8. #5
  9. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2008
    Posts
    38
    Rep Power
    6
    Thanks Keath!

    It worked nicely and could successfully install DBD::Oracle.
    Now when i try to connect am getting core dump.

    Code:
    Bus Error (core dumped)
    TIA.

    Regards...
  10. #6
  11. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2008
    Posts
    38
    Rep Power
    6
    Actually I built both DBI 1.54 and DBD:Oracle 1.24 versions.
    Could establish DB connections where things are built.

    Now what am trying to do is copying installed Oracle.so and DBI.so on other machine where the environment is same. But when replacing these files there am getting core dump errors.

    When replaced Oracle.so, getting "Bus Error (core dumped)":

    # pstack core
    core 'core' of 22416: perl testme.pl
    f777bd40 boot_DBD__Oracle (5000, 10, 0, f77b0fe8, 0, 1) + bcc
    000952b0 Perl_pp_entersub (80, 1, 293794, 136800, 1b5028, 0) + 660
    0008ba34 Perl_runops_standard (1da2c0, 130000, 8b9e8, 1da2c0, 136000, 136800) + 4c
    00028f80 S_run_body (1, 0, 136400, 136000, 0, 0) + 1b0
    00028c2c perl_run (1, 0, 1, 136800, 136400, 136800) + 240
    0002524c main (2, ffbff534, ffbff540, 128c00, f7b90100, 0) + a4
    00025190 _start (0, 0, 0, 0, 0, 0) + 108

    Then replaced DBI.so and getting "Illegal Instruction (core dumped)":

    # pstack core
    core 'core' of 22423: perl testme.pl
    0014a460 ???????? (0, 14a45c, f77fb0f8, f77f9ad4, f77e6d8c, 54)
    f77e6b44 boot_DBI (0, 4c, 10, 0, 0, 0) + 1144
    000952b0 Perl_pp_entersub (80, 1, 19bab4, 136800, 13db5c, 0) + 660
    0008ba34 Perl_runops_standard (ffbfea58, 0, 0, 0, f7b92a00, 2) + 4c
    000298cc Perl_call_sv (0, 0, 136800, 136400, 136400, 136800) + 614
    0002de20 S_call_list_body (158328, 0, 0, 130000, f7b92a00, 2) + 60
    0002d988 Perl_call_list (6, 158afc, 158328, 1, 155428, ffbfef04) + 158
    0005df0c Perl_newATTRSUB (13a, 136400, 158328, 136400, 6, 136400) + 1008
    00051d10 Perl_yyparse (0, 14f608, 14f5e8, 14ec70, 14f5f0, 12949e) + c88
    000c6d9c S_doeval (136400, 0, 136800, 136400, 130000, 136800) + 26c
    000c8ad8 Perl_pp_require (0, 130000, 136400, 136400, 13c868, ffbfefb0) + 15e8
    0008ba34 Perl_runops_standard (ffbfefb0, 0, 0, 0, f7b92a00, 2) + 4c
    000298cc Perl_call_sv (0, 0, 136800, 136400, 136400, 136800) + 614
    0002de20 S_call_list_body (137d04, 0, 0, 130000, f7b92a00, 2) + 60
    0002d988 Perl_call_list (1, 137d88, 137d04, 1, 1400b8, ffbff398) + 158
    0005df0c Perl_newATTRSUB (67, 136400, 137d04, 136400, 1, 136400) + 1008
    0005a424 Perl_utilize (eaa85f7c, 67, eab50a77, 13c818, 853b8000, 6ff08a77) + 3e8
    00051f74 Perl_yyparse (0, 14b524, 14b500, 14b2a0, 14b508, 12949e) + eec
    000288b8 S_parse_body (1373c8, 144f70, 0, 0, ffbff4d8, 136400) + f3c
    00027604 perl_parse (130000, 0, 1, 136800, 136800, 136800) + 494
    00025238 main (2, ffbff4d4, ffbff4e0, 128c00, f7b90100, 0) + 90
    00025190 _start (0, 0, 0, 0, 0, 0) + 108



    Please advice, am really stuck here. Not sure what is wrong here, am missing something or doing incorrect replacements?

    TIA.

    Regards...
  12. #7
  13. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2008
    Posts
    38
    Rep Power
    6
    Some more details, just was looking more and my testme.pl file only has:

    Code:
    use DBI;
    Still am getting "Illegal Instruction (core dumped)" error.

    Regards ...
  14. #8
  15. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2008
    Posts
    38
    Rep Power
    6
    As mentioned earlier, the installed version of DBD:Oracle works fine on machine A.

    When i copied over installed Oracle.so and DBI.so on other machine where the environment is same, am facing core dump issues.

    Are other .h and .pm required to be copied also?
  16. #9
  17. !~ /m$/
    Devshed Specialist (4000 - 4499 posts)

    Join Date
    May 2004
    Location
    Reno, NV
    Posts
    4,221
    Rep Power
    1809
    Seems that the environments are not really the same.

    Building as a shared object, means that linking to the library won't occur until runtime. Since the modules are crashing, it's likely the same library is not found.

    Much better if you can build locally, on the machine you intend to run on.

    I'm not sure I've seen DBI built as a shared object before. Maybe I'm wrong; seems unusual. It's a pure perl interface, not dependent on database specific headers or libraries, so it seems unecessary.

    Even if the machine you want to build on is not connected to the internet, seems you could carry the downloads over to it with a USB drive and build there.
  18. #10
  19. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2008
    Posts
    38
    Rep Power
    6
    Thanks for the prompt reply Keath.

    Is it possible if the perl versions having issues across machines, if I built with 5.8.4 and now running on machine B where the perl verison is 5.8.8, are these core dump errors expected?

    Also the POA is to provide this compiled .so on other machines.
  20. #11
  21. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2008
    Posts
    38
    Rep Power
    6
    Hello,

    Please suggest...

    Regards...
  22. #12
  23. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2008
    Posts
    38
    Rep Power
    6
    Started fresh with this again with building with 5.8.8 perl.

    ExtUtils-MakeMaker-6.56 installed successfully.

    Building DBI-1.54 now and am getting following error:

    Makefile.PL worked correctly.

    gcc -c -D_REENTRANT -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -DVERSION=\"1.54\" -DXS_VERSION=\"1.54\" -fPIC "-I/opt/myperl/lib/5.8.8/sun4-solaris-thread-multi-64int/CORE" -W -Wall -Wpointer-arith -Wbad-function-cast -Wno-comment -Wno-sign-compare -Wno-cast-qual -Wmissing-noreturn -Wno-unused-parameter Perl.c
    sh: gcc: not found
    *** Error code 1
    make: Fatal error: Command failed for target `Perl.o'

    Its complaining for gcc, please suggest if am missing anything?

    TIA..
  24. #13
  25. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2008
    Posts
    38
    Rep Power
    6
    The ReadMe has following text:

    >>If you get an error like "gcc: command not found" or "cc: command not found" you need to either install a compiler, or you may be able to install a precompiled binary of DBI using a package manager (e.g., ppm for ActiveState, Synaptic for Ubuntu, port for FreeBSD etc)

    gcc is present on my machine:
    $ls -l /usr/bin/gcc
    lrwxrwxrwx 1 root root /usr/bin/gcc -> /opt/gcc/bin/gcc

    Not able to proceed here.
  26. #14
  27. !~ /m$/
    Devshed Specialist (4000 - 4499 posts)

    Join Date
    May 2004
    Location
    Reno, NV
    Posts
    4,221
    Rep Power
    1809
    The correct way to test if gcc is installed correctly, would be to try running the command

    Code:
    gcc -v
    to get the version, or

    Code:
    which gcc
    to find out where it is installed.

    Just listing a directory isn't good enough, because you need to make sure the software is found automatically by the system. It needs to be in the PATH.

    And even that might not be enough to uncover the problem. If you install as Root, then you need to switch to that account and do the same thing. The user doing the install must be able to automatically find the software.

    But the package manager option is always a good one. Unfortunately, not sure if Solaris has such a thing.
  28. #15
  29. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2008
    Posts
    38
    Rep Power
    6
    Thanks Keath.

    Actually 2-3 hours back resolved this issue but failed to update this thread. I had to install gcc which I downloaded from http://www.sunfreeware.com/programlistsparc10.html#gcc and then compiled my DBI sources and could successfully install it.

    So having correct gcc worked!

    But there are some more environmental limitations which am facing now. perl 'v5.8.8 built for sun4-solaris-thread-multi-64int' was used for compilation, but in my current environment there are some perl modules compiled with 'v5.8.8 built for sun4-solaris' too and those are present too. Hence this compiled DBD is not working with those perl modules and complaining.

    ld.so.1: perl: fatal: relocation error: file /opt/perl/lib/5.8.8/sun4-solaris-thread-multi-64int//auto/List/Util/Util.so: symbol Perl_Gthr_key_ptr: referenced symbol not found
    Killed

    I hope I could explain issue.

    Actually its all because the mixed environment which is delaying things. Otherwise compilation did work today.

    Still stuck..

    TIA..
Page 1 of 2 12 Last
  • Jump to page:

IMN logo majestic logo threadwatch logo seochat tools logo