I wanted to build an awesome place for people to discuss module specific issues, but I don't have any more time for this, and there are much better places to discuss Perl-related issues. I'd recommend asking your question on Stack Overflow or on Perl Monks.
If you are looking for a Perl tutorial or Perl-related news, I hope these links will serve you well.
Posted on 2005-03-16 15:33:33-08 by rhumbliner
Instant Client10g
i just downloaded the latest version of oracle instant client for linux on the amd64:

instantclient-basic-linux-x86-64-10.1.0.3.zip
instantclient-sdk-linux-x86-64-10.1.0.3.zip
instantclient-sqlplus-linux-x86-64-10.1.0.3.zip

but there is still no oracle.mk included to allow me to build the perl module DBD::Oracle. does anyone know of a work around for this problem? i don't want to install the full database because this box is just pulling data from an oracle server. i can get my C apps running but i sure would like to be able to use perl.

thanks,
tom
Direct Responses: 242 | Write a response
Posted on 2005-03-22 01:44:10-08 by rhumbliner in response to 229
Re: Instant Client10g
ok, so i finally figured out the solution. here's what i had to do to get perl's dbd::oracle module working on an amd64 with gentoo and oracle's 10g instant client.

mkdir /opt/oracle
cd /opt/oracle
unzip /var/downloads/instantclient-basic-linux-x86-64-10.1.0.3.zip
unzip /var/downloads/instantclient-sdk-linux-x86-64-10.1.0.3.zip
unzip /var/downloads/instantclient-sqlplus-linux-x86-64-10.1.0.3.zip
cd instantclient10_1/
ln -s . lib
ln -s libclntsh.so.10.1 libclntsh.so
ln -s libocci.so.10.1 libocci.so


2) set environment variables:

export ORACLE_HOME="/opt/oracle/instantclient10_1"
export LD_LIBRARY_PATH="$ORACLE_HOME:$LD_LIBRARY_PATH"


3) modify Makefile.PL per Satoshi's instructions (http://www.nntp.perl.org/group/perl.dbi.users/25638) to bypass the find_headers() routine and to pass a correct -I flag to cc; mine is kept in .cpan/build/DBD-Oracle-1.16/:


comment out the lines:
my @h_dirs = find_headers();
push @h_dirs, 'network/public';
and replace this line:
my $inc = join " ", map { "-I$OH/$_" } @h_dirs;
with this line:
my $inc = "-I/opt/oracle/instantclient10_1/sdk/include";


4) build the module

perl Makefile.PL -l
make
# make test generates lots of errors
make test
make install


5) setup the shared library

create the file /etc/env.d/50oracle
with these lines:
ORACLE_HOME=/opt/oracle/instantclient10_1
LDPATH=/opt/oracle/instantclient10_1
C_INCLUDE_PATH=/opt/oracle/instantclient10_1/sdk/include

and then execute:
env-update
Direct Responses: 995 | 4156 | 4157 | 4158 | Write a response
Posted on 2005-09-15 18:42:37-07 by eaparnell in response to 242
Re: Instant Client10g
I did this on RHEL 4 (64 bit os) on EM64T and got all kinds of compile errors. Any thoughts?
Direct Responses: Write a response
Posted on 2007-01-26 00:55:56-08 by enzo660 in response to 242
Re: Instant Client10g
I have followed the above instructions. if i run : cpan > install DBD::Oracle i get the message, DBD::Oracle is up to date. does that mean my installation is flawless? Because i'm not able to run a program. I get the following error on running a program: ------------------------------------------------------------------------------------------------- install_driver(Oracle) failed: Can't load '/usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: /home/ralf/oracle/instantclient_10_2/lib/libclntsh.so.10.1: symbol semtimedop, version GLIBC_2.3.3 not defined in file libc.so.6 with link time reference at /usr/lib/perl5/5.8.0/i386-linux-thread-multi/DynaLoader.pm line 229. at (eval 1) line 3 Compilation failed in require at (eval 1) line 3. Perhaps a required shared library or dll isn't installed where expected at oratest.pl line 6 -------------------------------------------------------------------------------------------------
Direct Responses: Write a response
Posted on 2007-01-26 00:56:29-08 by enzo660 in response to 242
Re: Instant Client10g
I have followed the above instructions. if i run : cpan > install DBD::Oracle i get the message, DBD::Oracle is up to date. does that mean my installation is flawless? Because i'm not able to run a program. I get the following error on running a program: ------------------------------------------------------------------------------------------------- install_driver(Oracle) failed: Can't load '/usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: /home/ralf/oracle/instantclient_10_2/lib/libclntsh.so.10.1: symbol semtimedop, version GLIBC_2.3.3 not defined in file libc.so.6 with link time reference at /usr/lib/perl5/5.8.0/i386-linux-thread-multi/DynaLoader.pm line 229. at (eval 1) line 3 Compilation failed in require at (eval 1) line 3. Perhaps a required shared library or dll isn't installed where expected at oratest.pl line 6 -------------------------------------------------------------------------------------------------
Direct Responses: Write a response
Posted on 2007-01-26 01:31:25-08 by enzo660 in response to 242
Re: Instant Client10g
I have followed the above instructions. if i run : cpan > install DBD::Oracle i get the message, DBD::Oracle is up to date. does that mean my installation is flawless? Because i'm not able to run a program. I get the following error on running a program: ------------------------------------------------------------------------------------------------- install_driver(Oracle) failed: Can't load '/usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: /home/ralf/oracle/instantclient_10_2/lib/libclntsh.so.10.1: symbol semtimedop, version GLIBC_2.3.3 not defined in file libc.so.6 with link time reference at /usr/lib/perl5/5.8.0/i386-linux-thread-multi/DynaLoader.pm line 229. at (eval 1) line 3 Compilation failed in require at (eval 1) line 3. Perhaps a required shared library or dll isn't installed where expected at oratest.pl line 6 -------------------------------------------------------------------------------------------------
Direct Responses: 4161 | Write a response
Posted on 2007-01-26 11:58:45-08 by byterock in response to 4158
Re: Instant Client
64 bit installation is a pain and could be a number of things. First ensure you have the complete instant client including the SDK, and SQLPlus downloads and then try again By the way you might want to try looking at perl.dbi.dev for future support as few people use this forum.
Direct Responses: Write a response