On 03-Aug-2006 Craig A. Berry wrote:
> At 4:18 PM +0100 8/3/06, Martin J. Evans wrote:
>>Hi,
>>
>>I am attempting to install DBI on OpenVMS V8.2-1 on Itanium.
>>
>>I downloaded perl 5.8.6 from HP's site and installed it - it appears to work.
>>
>>perl makefile.pl appears to run without errors.
>>
>>but mms all finishes with:
>>
>>MCR annar$dka0:[sys0.syscommon.perl5_8_6]perl.exe -e "print
>>qq{PerlShr/Share\n}" >>DBI.OPT
>>Copy/NoConfirm DBI.OPT [.BLIB.ARCH.AUTO.DBI]DBI.OPT
>>MCR annar$dka0:[sys0.syscommon.perl5_8_6]perl.exe -p -e "s/~DRIVER~/Perl/g"
>>Driver.xst > Perl.xsi
>>%MMS-F-GWKNOACTS, Actions to update PERL.C are unknown.
>>
>>which suggests to me mms does not know how to convert an xsi file into c
>>since
>>the descrip.mms says:
>>
>>C_FILES = dbi.c perl.c
>>
>># The main dependancy (technically correct but probably not used)
>>Perl.c : Perl.xsi
>>
>>I can't find any rule to convert an .xsi into a .c in the mms file.
>
> The .xsi is just something used by the .xs and does not need to be
> converted into anything.
>
> The following rules in your descrip.mms should take care of it:
>
># --- MakeMaker xs_c section:
>
> .xs.c :
> $(XSUBPP) $(XSPROTOARG) $(XSUBPPARGS) $(MMS$TARGET_NAME).xs
>>$(MMS$TARGET)
>
>
># --- MakeMaker xs_o section:
>
> .xs$(OBJ_EXT) :
> $(XSUBPP) $(XSPROTOARG) $(XSUBPPARGS) $(MMS$TARGET_NAME).xs
>>$(MMS$TARGET_NAME).c
> $(CCCMD) $(CCCDLFLAGS) $(MMS$TARGET_NAME).c
>
> My guess is that you are running into a case sensitivity problem.
> You could try changing the rule from
>
> .xs.c
>
> to
>
> .xs.C
>
> Probably the easiest thing to do is wipe out the directory and unpack
> the DBI archive again, forcing ODS-2 style (and uppercase) names like
> so:
>
> $ vmstar -xovf DBI-1_51.tar
>
> I think there is an MMS bug here in that it can't preserve case but
> is sometimes (when applying implicit rules) case sensitive. You
> could also try MMK instead.
Thanks Craig
Using vmstar with -o did the trick.
and DBI passes the test.
Unfortunately mms clean produces:
$ mms clean
MCR annar$dka0:[sys0.syscommon.perl5_8_6]perl.exe "-MExtUtils::Command" -e rm_f
*.olb perl.c core core.[0-9] [.blib.a
rch.auto.DBI]extralibs.all core.[0-9][0-9] DBI.bso dbi.c
%SYSTEM-F-ACCVIO, access violation, reason mask=00, virtual
address=0000000001010101, PC=000000007AE26F60, PS=0000001B
Improperly handled condition, image exit forced by last chance handler.
Signal arguments: Number = 0000000000000005
Name = 000000000000000C
0000000000000000
0000000001010101
000000007AE26F60
000000000000001B
Register dump:
R0 = 0000000000000000 R1 = 000000007B0F4000 R2 = 0000000001010101
R3 = 000000000016829C R4 = 000000007FFCF818 R5 = 000000007FFCF8C0
R6 = 000000007FF67F30 R7 = 0000000000000002 R8 = 000000007AE26F30
R9 = 000000007AEF59D8 R10 = FFFFFFFF881CF9E0 R11 = 000000007B0F4000
SP = 000000007ACFAC70 TP = 000000000011A1C8 R14 = 0000000000000000
R15 = 000000007FFD06F0 R16 = 0000000000000000 R17 = 000000000007D270
R18 = 0000000069626436 R19 = 0000000000000000 R20 = 000000007AEC5708
R21 = 000000007AEF59D0 R22 = 000000007AEC4000 R23 = 000000000005AF30
R24 = 000000007ACFAAA0 R25 = 0000000000000002 R26 = 000000007AEC5710
R27 = 000000007ACFAC08 R28 = 000007FDBFFBA178 R29 = 000000000000DB48
R30 = 000000007ACFAAA8 R31 = 000000007AE268F0 PC = 000000007AE26F60
BSP/STORE = 000007FDC0000760 / 000007FDC0000678 PSR = 0000101308026030
IIPA = 000000007AE26F50
B0 = FFFFFFFF80377F90 B6 = FFFFFFFF800022E0 B7 = FFFFFFFF800E7B50
Interrupted Frame RSE Backing Store, Size = 2 registers
R32 = 000000007ACFB5B8 R33 = 000000007ACFAD60
Any idea how to delete files like those following which gnu tar created:
dbi-1^.52-rc1.tar;1
perl-5^.8^.8.DIR;1
perl-5^.8.8;1
I cannot even set def into the dir one.
(As you may have guessed by now, I'm new to VMS 8 on itanium although I used to
use VMS 5.? on VAX and alpha a long time ago).
Martin
--
Martin J. Evans
Easysoft Ltd, UK
http://www.easysoft.com