Operating System: SLES 11 SP 2 on x86-64
Perl: 5.14.2
Oracle: 11.2.0.3.0
DBD::Oracle: 1.34
If I try to build DBD::Oracle against a Server installation of Oracle,
the output of Makefile.PL includes the following strong warning message
mentioning this mailing list. Despite the warning message, the build
is successful.
> + /usr/local/perl/5.14.2-A/bin/perl Makefile.PL
> Using DBI 1.616 (for perl 5.014002 on x86_64-linux-thread-multi) installed in
> /usr/local/perl/5.14.2-A/lib/site_perl/5.14.2/x86_64-linux-thread-multi/auto/DBI/
>
> Configuring DBD::Oracle for perl 5.014002 on linux (x86_64-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 /oracle/base/orahome/11.2.0.3.0
> DEFINE _SQLPLUS_RELEASE = "1102000300" (CHAR)
> Oracle version 11.2.0.3 (11.2)
> Found /oracle/base/orahome/11.2.0.3.0/rdbms/lib/ins_rdbms.mk
> Using /oracle/base/orahome/11.2.0.3.0/rdbms/lib/ins_rdbms.mk
> Your LD_LIBRARY_PATH env var is set to ''
> WARNING: Your LD_LIBRARY_PATH env var doesn't include
> '/oracle/base/orahome/11.2.0.3.0/lib' but probably needs to.
> Reading /oracle/base/orahome/11.2.0.3.0/rdbms/lib/ins_rdbms.mk
> Reading /oracle/base/orahome/11.2.0.3.0/rdbms/lib/env_rdbms.mk
> WARNING: Oracle /oracle/base/orahome/11.2.0.3.0/rdbms/lib/ins_rdbms.mk
> doesn't define a 'build' rule.
>
> WARNING: I will now try to guess how to build and link DBD::Oracle for you.^G
> This kind of guess work is very error prone and Oracle-version
> sensitive.
> It is possible that it won't be supported in future versions of
> DBD::Oracle.
> *PLEASE* notify dbi-users about exactly _why_ you had to build it
> this way.
>
> Found header files in /oracle/base/orahome/11.2.0.3.0/rdbms/public.
>
> client_version=11.2
If I try to build against a full Oracle client installation,
I get the following fatal error. However, if I follow the advice
given in the error message, and add the following option to the Makefile.PL
-m /local/oracle/client.11.2.0.3.0/rdbms/lib/ins_rdbms.mk
the behaviour changes, and I get a warning like the one above, and a
successful build.
> + /local/oracle/perl/5.14.2-A/bin/perl Makefile.PL
> Using DBI 1.616 (for perl 5.014002 on i686-linux-thread-multi) installed in
> /local/oracle/perl/5.14.2-A/lib/site_perl/5.14.2/i686-linux-thread-multi/auto/DBI/
>
> Configuring DBD::Oracle for perl 5.014002 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 /local/oracle/client.11.2.0.3.0
> DEFINE _SQLPLUS_RELEASE = "1102000300" (CHAR)
> Oracle version 11.2.0.3 (11.2)
>
> Unable to locate an oracle.mk or other suitable *.mk
> file in your Oracle installation. (I looked in
> /local/oracle/client.11.2.0.3.0/rdbms/demo/demo_xe.mk
> /local/oracle/client.11.2.0.3.0/rdbms/demo/demo_rdbms32.mk under
> /local/oracle/client.11.2.0.3.0)
>
> The oracle.mk (or demo_rdbms.mk) file is part of the Oracle
> RDBMS 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 1185.
What am I doing wrong?
--
Charles Jardine - Computing Service, University of Cambridge
[email protected] Tel: +44 1223 334506, Fax: +44 1223 334679