469,286 Members | 2,419 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,286 developers. It's quick & easy.

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

Expand|Select|Wrap|Line Numbers
  1.  perl Makefile.PL PREFIX=/homedirectory/PerlModules
  2. 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.
  3. BEGIN failed--compilation aborted at Makefile.PL line 21.
  4.  
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
Jul 27 '12 #1
12 3262
RonB
589 Expert Mod 512MB
Try adding this:
INSTALLPRIVLIB=/homedirectory/PerlModules
Jul 27 '12 #2
RonB
589 Expert Mod 512MB
Here's a link to more detailed info.
Installing Perl5 Modules Locally
Jul 27 '12 #3
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?
Jul 29 '12 #4
RonB
589 Expert Mod 512MB
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.
Jul 29 '12 #5
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?
Jul 30 '12 #6
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.
Jul 30 '12 #7
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.
Jul 30 '12 #8
numberwhun
3,503 Expert Mod 2GB
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
Jul 30 '12 #9
I'll try to do a make clean and reinstall DBD::Oracle
Jul 31 '12 #10
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.
Jul 31 '12 #11
RonB
589 Expert Mod 512MB
You could start over from scratch by manually deleting the build directory and then untar the source and do a new build.
Jul 31 '12 #12
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
Expand|Select|Wrap|Line Numbers
  1. perl Makefile.PL PREFIX=~/lib LIB=~/lib
  2. Segmentation fault(coredump)
  3.  
Completely stumped on this one...
Jul 31 '12 #13

Post your reply

Sign in to post your reply or Sign up for a free account.

Similar topics

1 post views Thread by rawii | last post: by
reply views Thread by Axel Dachtler | last post: by
reply views Thread by Envex Developments | last post: by
reply views Thread by Envex Developments | last post: by
1 post views Thread by jrefran | last post: by
3 posts views Thread by OracletoPerl | last post: by
1 post views Thread by CARIGAR | last post: by
reply views Thread by zhoujie | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.