I hope people on this list do not think this discussion is inappropriate for
the vmsperl list. If so, please let me know. I had thought of using one of the
DBI lists but there seems to be fewer VMS people subscribed to those lists -
possibly because the traffic is so high.
After a great deal of tinkering I have managed to get Perl, DBI and DBD::ODBC
working on VMS 7.2 with the Easysoft ODBC-ODBC Bridge. I can now get data from
MS SQLServer and MS Access back to a VMS box through Perl DBI - I did not
mention it but this was the goal.
On 08-May-2000 [EMAIL PROTECTED] wrote:
> Martin J. Evans wrote:
>
>> Craig,
>>
>> Thanks for replying. I have managed to get a little further now. I think DBI
>> is installed but I am trying to install DBD::ODBC with my driver to check it
>> out and am having even more problems. For DBI I found:
>>
>> [1] For some strange reason the generated descrip.mms file did not create
>> the required dir structure and copy the files in to the correct places. I
>> did not spend long looking at this, but manually created/copied the files
>> instead - will go back to this when I have got a bit further.
>
> This is odd. In general files that need to be copied will go into
> a [.blib...] sub tree of where the Makefile.PL is but will not get installed
> until `mms install` is run.
Sorry, I perhaps did not explain very well. When you run make in UNIX for DBI
you get something like this:
mkdir blib
mkdir blib/lib
mkdir blib/arch
mkdir blib/arch/auto
mkdir blib/arch/auto/DBI
mkdir blib/lib/auto
mkdir blib/lib/auto/DBI
mkdir blib/man1
mkdir blib/man3
cp lib/DBI/W32ODBC.pm blib/lib/DBI/W32ODBC.pm
cp lib/DBD/ExampleP.pm blib/lib/DBD/ExampleP.pm
cp lib/DBI/Shell.pm blib/lib/DBI/Shell.pm
cp lib/DBI/FAQ.pm blib/lib/DBI/FAQ.pm
cp lib/DBI/ProxyServer.pm blib/lib/DBI/ProxyServer.pm
etc etc
In VMS I got:
mms
%MMS-F-GWKNOPRN, There are no known sources for the current target
[.BLIB.ARCH.AUTO.DBI]DRIVER.XST
The directory [.BLIB] and subdirectories were never created by the descrip.mms
file and no file copies occurred.
I discovered that an mms config creates the directories but the file copies are
still missing. Then, today when I got around to investigating this properly I
discovered mms all, appears to do it correct - it surprised me that I had to
mention all as the target.
>> [3] DBI installs dbish.pl. I thought I would use this to test DBI but had
>> problems. The dbish.pl is prefixed with:
>>
>> $ perl 'f$env("procedure")' 'p1' 'p2' ... 'p8' !
>> $ exit++ + ++$status != 0 and $exit = $status = undef; -w
>>
>> I could not run dbish without removing these two lines!
>
> That is a DCL wrapper since apparently dbish.pl is listed as
> an EXE file by the Makefile.PL. You could have invoked it
> from the command prompt as:
>
> @dbish.pl
>
> or:
>
> @disk:[dir]dbish.pl
I tried that and got:
"use" not allowed in expression at dka200:[perl-5_6_0.utils]dbish.pl;4 line 4,
at end of line
syntax error at dka200:[perl-5_6_0.utils[dbish.pl;4, near "use strict"
BEGIN not safe after errors--compilation aborted at
dka200:[perl-5_6_0.utils[dbish.pl;4 line 6
%SYSTEM-F-NOLOGNAM, no logical name match
>
>> I have moved on to DBD::ODBC and am working on modifications to the
>> Makefile.PL as it does not work for VMS properly. One problem here is that
>> Makefile.PL for DBD::ODBC uses glob and my main Perl failed with glob-basic
>> test 3 failed. Other problems are failure to include the olbs in the link
>> line.
> Perl's glob() works on VMS, however it does work different from Unix or
> NT implementations of glob(). The test suite did not take that into
> consideration when 5.6.0 was released, but there are patches to correct
> the tests that have been discussed on this list.
Thanks for the info on the test suite however my problem seems to be in
addition to that. When I run perl Makefile.PL for DBD::ODBC there is some Perl
like this:
$myodbc = 'unixodbc'
if <$odbchome/lib/libodbc*>;
which produces:
glob failed (can't start child: invalid argument) at makefile.pl line nnn
--
Martin J. Evans
Easysoft Ltd, UK
Development