Subject: | Unable to automatically locate a *.mk on oracle-xe under debian |
DBD::Oracle compiles cleanly against the .deb of Oracle XE (distributed
by oracle themselves), but sadly requires handholding:
===================
Files available from Oracle:
===================
rabbit@Thesaurus:~/src/DBD-Oracle-1.24$ locate .mk | grep oracle
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/rdbms/demo/demo_xe.mk
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/ctx/lib/env_ctx.mk
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/ctx/lib/ins_ctx.mk
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/rdbms/demo/demo_xe.mk
===================
Without hints:
===================
rabbit@Thesaurus:~/src/DBD-Oracle-1.24$
ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/client perl
Makefile.PL
Using DBI 1.611 (for perl 5.013002 on i686-linux-thread-multi) installed
in
/home/rabbit/perl5/perlbrew/perls/5.13.2/lib/site_perl/5.13.2/i686-linux-thread-multi/auto/DBI/
Configuring DBD::Oracle for perl 5.013002 on linux (i686-linux-thread-multi)
Remember to actually *READ* the README file! Especially if you have any
problems.
Installing on a linux, Ver#2.6
Using Oracle in /usr/lib/oracle/xe/app/oracle/product/10.2.0/client
DEFINE _SQLPLUS_RELEASE = "1002000100" (CHAR)
Oracle version 10.2.0.1 (10.2)
Unable to locate an oracle.mk, proc.mk or other suitable *.mk
file in your Oracle installation. (I looked in
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/rdbms/demo/demo_rdbms32.mk
/usr/share/oracle/xe/app/oracle/product/10.2.0/client/demo.mk
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/precomp/demo/proc/proc.mk
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/precomp/demo/proc/demo_proc.mk
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/proc/lib/proc.mk
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/proc16/lib/proc16.mk
/usr/share/oracle/10.2/client/demo.mk
/usr/share/oracle/10.2/client64/demo.mk under
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client)
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.
===================
With -m:
===================
rabbit@Thesaurus:~/src/DBD-Oracle-1.24$
ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/client perl
Makefile.PL -m
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/rdbms/demo/demo_xe.mk
Using DBI 1.611 (for perl 5.013002 on i686-linux-thread-multi) installed
in
/home/rabbit/perl5/perlbrew/perls/5.13.2/lib/site_perl/5.13.2/i686-linux-thread-multi/auto/DBI/
Configuring DBD::Oracle for perl 5.013002 on linux (i686-linux-thread-multi)
Remember to actually *READ* the README file! Especially if you have any
problems.
Installing on a linux, Ver#2.6
Using Oracle in /usr/lib/oracle/xe/app/oracle/product/10.2.0/client
DEFINE _SQLPLUS_RELEASE = "1002000100" (CHAR)
Oracle version 10.2.0.1 (10.2)
Found
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/rdbms/demo/demo_xe.mk
Using
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/rdbms/demo/demo_xe.mk
Looks like Oracle XE
(/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/rdbms/demo/demo_xe.mk)
Reading
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/rdbms/demo/demo_xe.mk
Your LD_LIBRARY_PATH env var is set to ''
WARNING: Your LD_LIBRARY_PATH env var doesn't include
'/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/lib' but probably
needs to.
Checking for functioning wait.ph
System: perl5.013002 linux thesaurus 2.6.29.2.thes2 #1 preempt tue sep 8
11:27:43 cest 2009 i686 gnulinux
Compiler: cc -O2 -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe
-fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64
Linker: /usr/bin/ld
Sysliblist:
Oracle makefiles would have used these definitions but we override them:
CC: /usr/bin/gcc
LDFLAGS: -g
[-g]
Linking with -L/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/lib/
-lclntsh -lpthread
Checking if your kit is complete...
Looks good
LD_RUN_PATH=/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/lib
Using DBD::Oracle 1.24.
Using DBD::Oracle 1.24.
Using DBI 1.611 (for perl 5.013002 on i686-linux-thread-multi) installed
in
/home/rabbit/perl5/perlbrew/perls/5.13.2/lib/site_perl/5.13.2/i686-linux-thread-multi/auto/DBI/
Writing Makefile for DBD::Oracle
*** If you have problems...
read all the log printed above, and the README and README.help.txt
files.
(Of course, you have read README by now anyway, haven't you?)
Cheers!