To recap what I have found in my quest to build Perl 5.6.1 with
access to oracle:
I have installed the pcsi kits from HP, both the general kit
and the update.
I then got the latest DBI kit: 1.43, but found that in order to do
the MMS TEST I ought to have Test::More installed too.
This took som question on CPAN but in the end i found a kit:
Test-Simple-0_47 which i fetched and tried to install it.
That in fact went well - except that the test-fase (mms test)
did not!
$ mms test
perl "-I[.blib.arch]" "-I[.blib.lib]" "" "" -e "use Test::Harness qw(&runtes
ts $verbose); $verbose=0; runtests @ARGV;" t/*.t
Bareword found where operator expected at line 1, near "$ WRITE MMS"
(Missing operator before MMS?)
and there it just hangs ?!?
In the end I terminated it with ctrl/y and did the install - which
went without a hitch...
Then I started bilding dbi-1.43.
$ perl makefile.pl
went OK, but the following bild didn't.
I did this change to the descrip.mms file, and then it did build:
File PERL_ROOT:[LIB.DBI-1_43]DESCRIP.MMS;4
275 DBI_INSTARCH_DIR=[]
276 DBI_DRIVER_XST=$(DBI_INSTARCH_DIR)Driver.xst
******
File PERL_ROOT:[LIB.DBI-1_43]DESCRIP.MMS;3
275 DBI_INSTARCH_DIR=.
276 DBI_DRIVER_XST=$(DBI_INSTARCH_DIR)Driver.xst
My understanding of this is that the dot in the original means 'current directory'
and my change tells the same story - but in dcl.
After the build i tried the test, and it did look as mostly good,
except for one test, 10examp, which failed spectacularly. But
done manually went fine ?
The install went OK.
Then for the DBD-oracle.
Originally I got the 1.15 kit. But in the course of my quest for help
i came across an article on the DBI-users mailing list, which told about
the 1.16-rc5 kit.
Part of the story here is that users everywhere are upgrading away from
various oracle7 kits to newer versions, oracle8i, 9i, 10g and so, and
the DBD-oracle kit is beginning to reflect this in that oracle7 support
is being dropped in favour of the newer versions.
I got the 1.16-rc5 kit, well knowing that it is maybe not fully finished,
and startet to build.
And of course got bitten in te first step: perl makefile.pl. with the
message that I originally posted on the list: unable to locate Driver.xst.
Now, after having realised the meaning of @INC, and of .'s (dot's) in
some places of code, i started playing with the various files that is
part of this.
In the end I found that if one changed two lines in DBD.pm, then it was
possible to make perl do the 'makefile.pl' part:
PERL_ROOT:[LIB.SITE_PERL.DBI] diff dbd.pm;4 dbd.pm;1
************
File PERL_ROOT:[LIB.SITE_PERL.DBI]DBD.PM;4
3741 # my @try = map { "$_/auto/DBI" } @INC;
3742
3743 my @try = map { vmsify( unixify($_) . "/auto/DBI/" ) } @INC;
3744
3745 # my @xst = grep { -f "$_/Driver.xst" } @try;
3746
3747
3748 my @xst = grep { -f vmsify( unixify($_) . "/Driver.xst" ) } @try;
3749
3750
3751 Carp::croak("Unable to locate Driver.xst in @try") unless @xst;
******
File PERL_ROOT:[LIB.SITE_PERL.DBI]DBD.PM;1
3741 my @try = map { "$_/auto/DBI" } @INC;
3742 my @xst = grep { -f "$_/Driver.xst" } @try;
3743 Carp::croak("Unable to locate Driver.xst in @try") unless @xst;
The essence in this is, that the map statement, for reasons not known
to me, fails to do what is intended, but with a little help as shown
comes through, though my troubles is not over.
It now says:
$ perl makefile.pl
*** Warning: Path separator characters (`|') in the current directory path
(PERL_ROOT:[LIB.DBD-ORACLE-1_16]) may cause problems
Using DBI 1.43 (for perl 5.006001 on VMS_AXP) installed in
perl_root:[lib.site_perl.VMS_AXP.auto.DBI]
Configuring DBD::Oracle ...
>>> Remember to actually *READ* the README file!
Especially if you have any problems.
Using Oracle in /SAM103/ORACLE92
I'm having trouble finding your Oracle version number
Oracle version 10.3.0 (10.3)
Checking for functioning wait.ph
System: perl5.006001 VMS merkur V7.3-1
Compiler: CC/DECC
/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/NOANSI_ALIAS
Sysliblist:
Warning: If you have problems you may need to rebuild perl with threading enabled.
Checking if your kit is complete...
Looks good
LD_RUN_PATH=/SAM103/ORACLE92/lib32:/SAM103/ORACLE92/rdbms/lib32
Using DBD::Oracle 1.16.
Warning: I could not locate your pod2man program. As a last choice,
I will look for the file to which the logical name POD2MAN
points when MMK is invoked.
Using DBI 1.43 (for perl 5.006001 on VMS_AXP) installed in
perl_root:[lib.site_perl.VMS_AXP.auto.DBI]
Writing Descrip.MMS for DBD::Oracle
*** If you have problems...
read all the log printed above, and the README and README.help files.
(Of course, you have read README by now anyway, haven't you?)
$
I missed it at first, but it seems that it has trouble determinating my
oracle version, and therefore set it at 10.3 ? which I believe is not yet
available on the platform.
The following build did not succeed, but I guess I need to make sure it
uses the correct oracle version first...
And the correct forum for questions may be at the [EMAIL PROTECTED]
Regards
Jakob Snoer
Nordic Processor
Data Warehouse Handel Drift / 8612
Tlf 436736
[EMAIL PROTECTED]