Installing DBD::Oracle locally

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • starlight849
    New Member
    • Jun 2009
    • 82

    Installing DBD::Oracle locally

    Hi,

    I am working on a system that I do not have root access on.. Therefore I am installing some modules that I need to my home directory.

    So far when I installed the DBI class it worked fine. But when I go to install the DBD::Oracle module I get the error that

    Code:
     perl Makefile.PL PREFIX=/homedirectory/PerlModules
    Can't locate DBI.pm in @INC (@INC contains: ../../perl5/5.8.8/aix-thread-multi /usr/opt/perl5/lib/5.8.8 ../../perl5/lib/site_perl/5.8.8/aix-thread-multi ../../perl5/lib/site_perl/5.8.8 p../../perl5/lib/site_perl .) at Makefile.PL line 21.
    BEGIN failed--compilation aborted at Makefile.PL line 21.
    Since the Oracle DBD module is dependant on the DBI class I assume I will someone need to add my home directory to the @INC list. Is this even possible?

    Can someone give me a heads up on how to go about this if it is?

    Thanks
  • RonB
    Recognized Expert Contributor
    • Jun 2009
    • 589

    #2
    Try adding this:
    INSTALLPRIVLIB=/homedirectory/PerlModules

    Comment

    • RonB
      Recognized Expert Contributor
      • Jun 2009
      • 589

      #3
      Here's a link to more detailed info.
      Installing Perl5 Modules Locally

      Comment

      • starlight849
        New Member
        • Jun 2009
        • 82

        #4
        Thanks for the link.
        I tried following the suggestions in the Link you sent for the setenv PERL5LIB but that is for tch or csh and I'm using ksh. Would you happen to know the proper command?
        Last edited by starlight849; Jul 29 '12, 05:11 PM. Reason: Solved using export

        Comment

        • RonB
          Recognized Expert Contributor
          • Jun 2009
          • 589

          #5
          Setting the environment variable in the shell is not required, but you can do it if you want.

          export PERL5LIB=/homedirectory/PerlModules
          You'll need to specify all lib paths in the export statement separated by a colon.

          Or, instead of setting the environment var, use the INSTALLPRIVLIB option/arg in the call to Makefile.PL as is also shown in that link that I posted.

          Comment

          • starlight849
            New Member
            • Jun 2009
            • 82

            #6
            So when I installed DBI I created the settings file such as what is provided in the link. perl Makefile.PL `cat LibPaths`
            This is an AIX box. In case that helps.


            In the file I followed the example's format
            PREFIX=/usr/home/USERNAME/usr/local \
            INSTALLPRIVLIB=/usr/home/USERNAME/usr/local/lib/perl5 \
            INSTALLSCRIPT=/usr/home/USERNAME/usr/local/bin \
            INSTALLSITELIB=/usr/home/USERNAME/usr/local/lib/perl5/site_perl \
            INSTALLBIN=/usr/home/USERNAME/usr/local/bin \
            INSTALLMAN1DIR=/usr/home/USERNAME/usr/local/lib/perl5/man \
            INSTALLMAN3DIR=/usr/home/USERNAME/usr/local/lib/perl5/man/man3

            Should I be replacing the \ between each path with a ; ?
            I'm still having trouble seeing the DBD.pm file. And even when I export the Class path to the @inc statements the DBD.pm file still won't see the trigger.pm dependency that is located in the same Class folder.

            Any suggestions?

            Comment

            • starlight849
              New Member
              • Jun 2009
              • 82

              #7
              I think I was creating my installation directories incorrectly... I am resinstalling all my local modules using perl Makefile.PL PREFIX=~/lib LIB=~/lib during setup. I will let you know how this works out when I go to install DBD::Oracle.

              Comment

              • starlight849
                New Member
                • Jun 2009
                • 82

                #8
                I'm still having the same issues. I have reinstalled everything in the local/lib directory yet when I go to install DBD::Oracle and point to the local/lib directory it is unable to find the DBI.pm dependency. :( Not sure what to do at this point.

                Comment

                • numberwhun
                  Recognized Expert Moderator Specialist
                  • May 2007
                  • 3467

                  #9
                  Just out of curiosity, have you tried doing a "make clean" and then rebuilding from there. That way it starts the build fresh instead of reusing its settings. I say this in case it already tried to read from the variable PERL5LIB the first time through, it won't try again unless you clean up the first attempt.

                  Its always a good idea to 'make clean' between build attempts.

                  Regards,

                  Jeff

                  Comment

                  • starlight849
                    New Member
                    • Jun 2009
                    • 82

                    #10
                    I'll try to do a make clean and reinstall DBD::Oracle

                    Comment

                    • starlight849
                      New Member
                      • Jun 2009
                      • 82

                      #11
                      When I try to do a make clean in the DBD::Oracle directory I get this message.

                      make: 1254-002 Cannot find a rule to create target clean from dependencies.

                      Comment

                      • RonB
                        Recognized Expert Contributor
                        • Jun 2009
                        • 589

                        #12
                        You could start over from scratch by manually deleting the build directory and then untar the source and do a new build.

                        Comment

                        • starlight849
                          New Member
                          • Jun 2009
                          • 82

                          #13
                          It looks like I got all the @inc and path issues figured out... Now I'm getting this when I run my DBD::Oracle makefile
                          Code:
                          perl Makefile.PL PREFIX=~/lib LIB=~/lib
                          Segmentation fault(coredump)
                          Completely stumped on this one...

                          Comment

                          Working...