Greetings,

I just wanted to throw this out and let it sink into the archives, as I
managed to build DBD-Oracle without a full install of Oracle, and link
it with instantclient for Oracle 10.1.0.2.

I've been looking for something like this for a while without success. I
figure there are others out there looking for the same thing.

The instant client part you may or may not be aware of. It in the
archives here: 
http://www.mail-archive.com/[EMAIL PROTECTED]/msg02925.html

---WARNING---WARNING---REALLY-UGLY-HACK-----WARNING-----

0) get and install at least oracle-instantclient-basic-10.1.0.2-1
1) Grab the Oracle 10.1.0.2 distro for linux.
2) un-cpio it such that Disk1/ is in the current directoy (lets say
$HOME)
3) run the following commands to get teh required files:
   
mkdir 10.1.0
cd 10.1.0
unzip -o
../Disk1/stage/Components/oracle.rdbms.occi.occi_ic/10.1.0.2.0/1/DataFiles/lib.jar
unzip -o
../Disk1/stage/Components/oracle.rdbms.oci/10.1.0.2.0/1/DataFiles/include.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.rdbms_rsf/10.1.0.2.0/1/DataFiles/lib.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.clntsh_rsf/10.1.0.2.0/1/DataFiles/lib.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.precomp_rsf/10.1.0.2.0/1/DataFiles/lib.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.net_rsf/10.1.0.2.0/1/DataFiles/lib.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.ldap_rsf/10.1.0.2.0/1/DataFiles/lib.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.net_rsf/10.1.0.2.0/1/DataFiles/netlib.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.ssl_rsf/10.1.0.2.0/1/DataFiles/stdlib.1.1.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.ssl_rsf/10.1.0.2.0/1/DataFiles/lib.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.nlsrtl_rsf/10.1.0.2.0/1/DataFiles/lib.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.oracore_rsf/10.1.0.2.0/1/DataFiles/lib.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.ssl_rsf.sslrsf_ic/10.1.0.2.0/1/DataFiles/lib.jar
unzip -o
../Disk1/stage/Components/oracle.rsf.nlsrtl_rsf/10.1.0.2.0/1/DataFiles/onls.jar
cd lib
unzip -o
../../Disk1/stage/Components/oracle.install.instcommon/10.1.0.2.0/1/DataFiles/lnx_stubs.1.1.jar
 libirc.a

#####watch out, that last one only extracts libirc.a, just in case your
lines are wrapping#####


cd ..
mv libntcps10_std.a lib/libntcps10.a
cd ..



3) set some env
export ORACLE_HOME=$HOME/10.1.0
export NLS_LANG=american_america.we8iso8859p1
export
ORACLE_USERID=test/[EMAIL 
PROTECTED](DESCRIPTION=\(ADDRESS=\(PROTOCOL=TCP\)\(HOST=xxx.xxx.xxx.xxx\)\(PORT=1521\)\)\(CONNECT_DATA=\(SERVER=DEDICATED\)\(SERVICE_NAME=db01\)\)\);

4) cd to the DBD-Oracle-1.15 directory

5) perl Makefile.PL (yes lots of complaints)

6) make (more complaints)

7) then:
unset ORACLE_HOME
export LD_LIBRARY_PATH=/lib:/usr/lib:/usr/lib/oracle/10.1.0.2/client/lib

8) and finally:
make test
make install

--------------End Steps----------------

I've run actual perl code accessing a remote DB, and it works fine, with
the exception of giving a "ORACLE_HOME environment variable not set!"
error right at the beginning.

I've even tarred up the DBD-Oracle directory, put it on another box with
instantclient installed, and after installing it and setting the
appropriate LD_LIBRARY_PATH and NLS_LANG, the script worked there as
well.

I've also used a number of libraries that come with the linux distro,
(tested Mandrake 9.1 and RedHat 8) rather than those from oracle. I
haven't enumerated them, but if you pay attention to your error
messages, they should be obvious.

IF you *can* wait for the instantclient SDK and the promised updates, i
still suggest you do so. But I couldn't.

I hope someone finds this useful...maybe even formalizes it...but as
usual, YMMV.


Allan.

Reply via email to