Cannot build bleadperl on OpenVMS
Hi, I am now working on porting Test::Smoke to OpenVMS, thanks to Bernd Ulmann. I'm on this machine: TIMMERMAN:FAFNER$ perl -Ilib -MTest::Smoke::SysInfo=tsuname -le print tsuname() FAFNER openvms - V7.2 VAX_7000-720 VAX_7000-720 After a successful configure I start MMK and get: MCR [--]miniperl.exe -I[--.lib] -I[--.lib] -e use ExtUtils::Mksymlists; -e Mksymlists('NAME' = 'Encode', 'DL_FUNCS' = { }, 'DL_VARS' = [], 'FUNCLIST' = []) MCR [--]miniperl.exe -e print [--.lib.auto.Encode]Encode.olb/Include=Encode\n [--.lib.auto.Encode]Encode.olb/Library\n; ENCODE.OPT MCR [--]miniperl.exe -e print qq{[--]PerlShr.exe/Share\n} ENCODE.OPT Copy/NoConfirm ENCODE.OPT [--.LIB.AUTO.ENCODE]ENCODE.OPT MCR [--]miniperl.exe -I[--.lib] [.bin]enc2xs -Q -O -o DEF_T.C -f def_t.fnm Writing compiled form 512 bytes in string tables 32 bytes (5.88%) saved spotting duplicates Reading iso-8859-1 (iso-8859-1) Reading ascii (ascii) Reading ascii-ctrl (ascii-ctrl) Reading null (null) CC/DECC /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj /Define=(VERSION= 2.02,XS_VERSION=2.02)/Include=([--],[.Encode])/NoList ENCODE.c %CLI-F-OPENIN, error opening DISK$USER_2:[TIMMERMAN.KLAD.PERL-CURRENT.EXT.ENCODE]ENCODE.C; as input -RMS-E-FNF, file not found %MMK-F-ERRUPD, error status %X102C occurred when updating target ENCODE.OBJ %MMK-F-ERRUPD, error status %X1C14803C occurred when updating target DYNEXT attached is config.sys Good luck, Abe -- CAUTION ... We have a trigger happy Klingon at tactical. -- Top-10 bumperstickers on the U.S.S. Enterprise #5 #!/bin/sh # # This file was produced by Configure.COM on a VMS system. # # Package name : perl5 # Source directory : sys$login:[perl59x] # Configuration time: Sat Oct 02 12:45:20 UTC+2:00 2004 # Configuration by : timmerman # Target system : VMS fafner V7.2 VAX 7000-720 CONFIG='true' Makefile_SH='descrip_mms.template' Mcc='CC/DECC' PERL_REVISION='5' PERL_VERSION='9' PERL_SUBVERSION='2' PERL_API_REVISION='5' PERL_API_VERSION='9' PERL_API_SUBVERSION='1' _a='.olb' _exe='.exe' _o='.obj' alignbytes='8' aphostname='write sys$output f$edit(f$getsyi(\SCSNODE\),\TRIM,LOWERCASE\)' ar='' archlib='perl_root:[lib.VMS_VAX.5_9_2]' archlibexp='perl_root:[lib.VMS_VAX.5_9_2]' archname='VMS_VAX' baserev='5.0' bin='/perl_root/00' binexp='perl_root:[00]' builddir='perl_root:[00]' byteorder='1234' castflags='0' cc='CC/DECC' cccdlflags='' ccdlflags='' ccflags='/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj ' ccname='DEC' ccversion='60490005' cf_by='timmerman' cf_email='[EMAIL PROTECTED]' cf_time='Sat Oct 02 12:45:20 UTC+2:00 2004' config_args='-des -Dusedevel -Dprefix=sys$login:[perl59x]' config_sh='[-]config.sh' cpp_stuff='42' cpplast=' ' cppminus=' ' cpprun='CC/DECC/noobj/comments=as_is/preprocess=sys$output sys$input' cppstdin='CC/DECC/noobj/comments=as_is/preprocess=sys$output sys$input' d_Gconvert='my_gconvert(x,n,t,b)' d_PRIEldbl='define' d_PRIFldbl='define' d_PRIGldbl='define' d_PRIXU64='undef' d_PRId64='undef' d_PRIeldbl='define' d_PRIfldbl='define' d_PRIgldbl='define' d_PRIo64='undef' d_PRIu64='undef' d_PRIx64='undef' d_SCNfldbl='define' d__fwalk='undef' d_access='undef' d_accessx='undef' d_aintl='undef' d_alarm='define' d_archlib='define' d_atolf='undef' d_atoll='undef' d_attribut='undef' d_bcmp='define' d_bcopy='define' d_bincompat3='undef' d_bsdgetpgrp='undef' d_bsdsetpgrp='undef' d_bzero='define' d_casti32='define' d_castneg='define' d_charvspr='undef' d_chown='define' d_chroot='undef' d_chsize='undef' d_class='undef' d_cmsghdr_s='undef' d_const='define' d_copysignl='define' d_crypt='define' d_csh='undef' d_cuserid='define' d_dbl_dig='define' d_dbminitproto='undef' d_difftime='define' d_dirfd='undef' d_dirnamlen='define' d_dlerror='undef' d_dlsymun='undef' d_dosuid='undef' d_drand48proto='define' d_dup2='define' d_eaccess='undef' d_endgrent='define' d_endhent='define' d_endnent='define' d_endpent='define' d_endpwent='define' d_endsent='define' d_eofnblk='undef' d_eunice='undef' d_fchmod='undef' d_fchdir='undef' d_fchown='undef' d_fcntl='define' d_fcntl_can_lock='undef' d_fd_set='define' d_fgetpos='define' d_finite='undef' d_finitel='undef' d_flexfnam='define' d_flock='undef' d_flockproto='undef' d_fork='undef' d_fp_class='undef' d_fpathconf='define' d_fpclass='undef' d_fpclassify='undef' d_fpclassl='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' d_fseeko='undef' d_fsetpos='define' d_fstatfs='undef' d_fstatvfs='undef' d_fsync='undef' d_ftello='undef' d_getcwd='define' d_getespwnam='undef' d_getfsstat='undef' d_getgrent='define' d_getgrps='undef' d_gethbyaddr='define' d_gethbyname='define' d_gethent='define' d_gethname='define' d_gethostprotos='define' d_getitimer='define' d_getlogin='define' d_getmnt='undef' d_getmntent='undef' d_getnbyaddr='define' d_getnbyname='define' d_getnent='define' d_getnetprotos='define' d_getpagsz='undef' d_getpbyname='define' d_getpbynumber='define' d_getpent='define' d_getpgid='undef'
Re: Cannot build bleadperl on OpenVMS
Make sure you have the latest version of MMK or use MMS. I recently built 5.8.4 on VAX with an older MMK and ran into some strange problems. It built fine after I installed the latest MMK.
Re: Cannot build bleadperl on OpenVMS
In article [EMAIL PROTECTED], [EMAIL PROTECTED] (Abe Timmerman) wrote: I am now working on porting Test::Smoke to OpenVMS, thanks to Bernd Ulmann. Thanks for working on this. I'm on this machine: TIMMERMAN:FAFNER$ perl -Ilib -MTest::Smoke::SysInfo=tsuname -le print tsuname() FAFNER openvms - V7.2 VAX_7000-720 VAX_7000-720 It's been quite a while since I've seen any serious build problems on Alpha, but VAX doesn't get tested much so this is good to see. After a successful configure I start MMK and get: MCR [--]miniperl.exe -I[--.lib] -I[--.lib] -e use ExtUtils::Mksymlists; -e Mksymlists('NAME' = 'Encode', 'DL_FUNCS' = { }, 'DL_VARS' = [], 'FUNCLIST' = []) MCR [--]miniperl.exe -e print [--.lib.auto.Encode]Encode.olb/Include=Encode\n [--.lib.auto.Encode]Encode.olb/Library\n; ENCODE.OPT MCR [--]miniperl.exe -e print qq{[--]PerlShr.exe/Share\n} ENCODE.OPT Copy/NoConfirm ENCODE.OPT [--.LIB.AUTO.ENCODE]ENCODE.OPT MCR [--]miniperl.exe -I[--.lib] [.bin]enc2xs -Q -O -o DEF_T.C -f def_t.fnm Writing compiled form 512 bytes in string tables 32 bytes (5.88%) saved spotting duplicates Reading iso-8859-1 (iso-8859-1) Reading ascii (ascii) Reading ascii-ctrl (ascii-ctrl) Reading null (null) CC/DECC /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj /Define=(VERSION= 2.02,XS_VERSION=2.02)/Include=([--],[.Encode])/NoList ENCODE.c %CLI-F-OPENIN, error opening DISK$USER_2:[TIMMERMAN.KLAD.PERL-CURRENT.EXT.ENCODE]ENCODE.C; as input -RMS-E-FNF, file not found I guess the first question is whether you do in fact have an ENCODE.c. I suspect you don't because in your log above, immediately after the line that copies encode.opt and before running enc2xs, you should have the line: MCR [--]miniperl.exe -I[--.lib] -I[--.lib] [--.lib.ExtUtils]xsubpp -nolinenumbers -typemap [--.lib.ExtUtils]typemap ENCODE.xs ENCODE.C As a temporary workaround, you could try setting default to the Encode directory and explicitly making ENCODE.c: $ mmk ENCODE.c and then proceeding with the build. But the real question is how the relevant dependency got missed in the main build. Encode is a complicated extension and there have been some problems building it with older versions of MMK. What version of MMK are you using (type mmk/ident to find out)? If it doesn't say 3.9-6, go to http://www.madgoat.com and get the latest version. If that doesn't help, then we'll have to back up and think about what else might be happening.
Cannot build bleadperl on OpenVMS
[Sorry if this arrives twice] Hi, I am now working on porting Test::Smoke to OpenVMS, thanks to Bernd Ulmann. I'm on this machine: TIMMERMAN:FAFNER$ perl -Ilib -MTest::Smoke::SysInfo=tsuname -le print tsuname() FAFNER openvms - V7.2 VAX_7000-720 VAX_7000-720 After a successful configure I start MMK and get: MCR [--]miniperl.exe -I[--.lib] -I[--.lib] -e use ExtUtils::Mksymlists; -e Mksymlists('NAME' = 'Encode', 'DL_FUNCS' = { }, 'DL_VARS' = [], 'FUNCLIST' = []) MCR [--]miniperl.exe -e print [--.lib.auto.Encode]Encode.olb/Include=Encode\n [--.lib.auto.Encode]Encode.olb/Library\n; ENCODE.OPT MCR [--]miniperl.exe -e print qq{[--]PerlShr.exe/Share\n} ENCODE.OPT Copy/NoConfirm ENCODE.OPT [--.LIB.AUTO.ENCODE]ENCODE.OPT MCR [--]miniperl.exe -I[--.lib] [.bin]enc2xs -Q -O -o DEF_T.C -f def_t.fnm Writing compiled form 512 bytes in string tables 32 bytes (5.88%) saved spotting duplicates Reading iso-8859-1 (iso-8859-1) Reading ascii (ascii) Reading ascii-ctrl (ascii-ctrl) Reading null (null) CC/DECC /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj /Define=(VERSION= 2.02,XS_VERSION=2.02)/Include=([--],[.Encode])/NoList ENCODE.c %CLI-F-OPENIN, error opening DISK$USER_2:[TIMMERMAN.KLAD.PERL-CURRENT.EXT.ENCODE]ENCODE.C; as input -RMS-E-FNF, file not found %MMK-F-ERRUPD, error status %X102C occurred when updating target ENCODE.OBJ %MMK-F-ERRUPD, error status %X1C14803C occurred when updating target DYNEXT attached is config.sys Good luck, Abe -- CAUTION ... We have a trigger happy Klingon at tactical. -- Top-10 bumperstickers on the U.S.S. Enterprise #5 #!/bin/sh # # This file was produced by Configure.COM on a VMS system. # # Package name : perl5 # Source directory : sys$login:[perl59x] # Configuration time: Sat Oct 02 12:45:20 UTC+2:00 2004 # Configuration by : timmerman # Target system : VMS fafner V7.2 VAX 7000-720 CONFIG='true' Makefile_SH='descrip_mms.template' Mcc='CC/DECC' PERL_REVISION='5' PERL_VERSION='9' PERL_SUBVERSION='2' PERL_API_REVISION='5' PERL_API_VERSION='9' PERL_API_SUBVERSION='1' _a='.olb' _exe='.exe' _o='.obj' alignbytes='8' aphostname='write sys$output f$edit(f$getsyi(\SCSNODE\),\TRIM,LOWERCASE\)' ar='' archlib='perl_root:[lib.VMS_VAX.5_9_2]' archlibexp='perl_root:[lib.VMS_VAX.5_9_2]' archname='VMS_VAX' baserev='5.0' bin='/perl_root/00' binexp='perl_root:[00]' builddir='perl_root:[00]' byteorder='1234' castflags='0' cc='CC/DECC' cccdlflags='' ccdlflags='' ccflags='/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj ' ccname='DEC' ccversion='60490005' cf_by='timmerman' cf_email='[EMAIL PROTECTED]' cf_time='Sat Oct 02 12:45:20 UTC+2:00 2004' config_args='-des -Dusedevel -Dprefix=sys$login:[perl59x]' config_sh='[-]config.sh' cpp_stuff='42' cpplast=' ' cppminus=' ' cpprun='CC/DECC/noobj/comments=as_is/preprocess=sys$output sys$input' cppstdin='CC/DECC/noobj/comments=as_is/preprocess=sys$output sys$input' d_Gconvert='my_gconvert(x,n,t,b)' d_PRIEldbl='define' d_PRIFldbl='define' d_PRIGldbl='define' d_PRIXU64='undef' d_PRId64='undef' d_PRIeldbl='define' d_PRIfldbl='define' d_PRIgldbl='define' d_PRIo64='undef' d_PRIu64='undef' d_PRIx64='undef' d_SCNfldbl='define' d__fwalk='undef' d_access='undef' d_accessx='undef' d_aintl='undef' d_alarm='define' d_archlib='define' d_atolf='undef' d_atoll='undef' d_attribut='undef' d_bcmp='define' d_bcopy='define' d_bincompat3='undef' d_bsdgetpgrp='undef' d_bsdsetpgrp='undef' d_bzero='define' d_casti32='define' d_castneg='define' d_charvspr='undef' d_chown='define' d_chroot='undef' d_chsize='undef' d_class='undef' d_cmsghdr_s='undef' d_const='define' d_copysignl='define' d_crypt='define' d_csh='undef' d_cuserid='define' d_dbl_dig='define' d_dbminitproto='undef' d_difftime='define' d_dirfd='undef' d_dirnamlen='define' d_dlerror='undef' d_dlsymun='undef' d_dosuid='undef' d_drand48proto='define' d_dup2='define' d_eaccess='undef' d_endgrent='define' d_endhent='define' d_endnent='define' d_endpent='define' d_endpwent='define' d_endsent='define' d_eofnblk='undef' d_eunice='undef' d_fchmod='undef' d_fchdir='undef' d_fchown='undef' d_fcntl='define' d_fcntl_can_lock='undef' d_fd_set='define' d_fgetpos='define' d_finite='undef' d_finitel='undef' d_flexfnam='define' d_flock='undef' d_flockproto='undef' d_fork='undef' d_fp_class='undef' d_fpathconf='define' d_fpclass='undef' d_fpclassify='undef' d_fpclassl='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' d_fseeko='undef' d_fsetpos='define' d_fstatfs='undef' d_fstatvfs='undef' d_fsync='undef' d_ftello='undef' d_getcwd='define' d_getespwnam='undef' d_getfsstat='undef' d_getgrent='define' d_getgrps='undef' d_gethbyaddr='define' d_gethbyname='define' d_gethent='define' d_gethname='define' d_gethostprotos='define' d_getitimer='define' d_getlogin='define' d_getmnt='undef' d_getmntent='undef' d_getnbyaddr='define' d_getnbyname='define' d_getnent='define' d_getnetprotos='define' d_getpagsz='undef' d_getpbyname='define' d_getpbynumber='define' d_getpent='define'
Re: Cannot build bleadperl on OpenVMS
Op een grimmige herfstdag (Saturday 02 October 2004 19:44),schreef Craig A. Berry: In article [EMAIL PROTECTED], [EMAIL PROTECTED] (Abe Timmerman) wrote: I am now working on porting Test::Smoke to OpenVMS, thanks to Bernd Ulmann. Thanks for working on this. And many thanks to Bernd for allowing me on his VAX Alpha for this! I'm on this machine: TIMMERMAN:FAFNER$ perl -Ilib -MTest::Smoke::SysInfo=tsuname -le print tsuname() FAFNER openvms - V7.2 VAX_7000-720 VAX_7000-720 It's been quite a while since I've seen any serious build problems on Alpha, but VAX doesn't get tested much so this is good to see. [snip mmk output] I guess the first question is whether you do in fact have an ENCODE.c. I suspect you don't because in your log above, immediately after the line that copies encode.opt and before running enc2xs, you should have the line: MCR [--]miniperl.exe -I[--.lib] -I[--.lib] [--.lib.ExtUtils]xsubpp -nolinenumbers -typemap [--.lib.ExtUtils]typemap ENCODE.xs ENCODE.C As a temporary workaround, you could try setting default to the Encode directory and explicitly making ENCODE.c: $ mmk ENCODE.c and then proceeding with the build. I should have thought of that, although it doesn't help the automation process ;) But the real question is how the relevant dependency got missed in the main build. Encode is a complicated extension and there have been some problems building it with older versions of MMK. What version of MMK are you using (type mmk/ident to find out)? If it doesn't say 3.9-6, go to http://www.madgoat.com and get the latest version. TIMMERMAN:FAFNER$ mmk/ident %MMK-I-IDENT, this is the MadGoat Make Utility V3.4-10 -MMK-I-COPYRIGHT, Copyright ? 1992-1996, MadGoat Software. All Rights Reserved. So I'll ask Bernd if he can find the time to update that. If that doesn't help, then we'll have to back up and think about what else might be happening. Good luck, Abe -- Ahh, duh. (Thumping forehead against keybsalf9iw.) -- Jarkko Hietaniemi on p5p @ 2003-02-11
Re: Cannot build bleadperl on OpenVMS
Op een grimmige herfstdag (Saturday 02 October 2004 21:46),schreef Abe Timmerman: Op een grimmige herfstdag (Saturday 02 October 2004 19:44),schreef Craig A. Berry: [Snip] Bernd was kind enough to install a newer mmk TIMMERMAN:FAFNER$ mmk/ident %MMK-I-IDENT, this is the MadGoat Make Utility V3.9-9 No change in the buildprocess with the newer mmk however :-( I guess the first question is whether you do in fact have an ENCODE.c. I suspect you don't because in your log above, immediately after the line that copies encode.opt and before running enc2xs, you should have the line: MCR [--]miniperl.exe -I[--.lib] -I[--.lib] [--.lib.ExtUtils]xsubpp -nolinenumbers -typemap [--.lib.ExtUtils]typemap ENCODE.xs ENCODE.C As a temporary workaround, you could try setting default to the Encode directory and explicitly making ENCODE.c: $ mmk ENCODE.c and then proceeding with the build. That got me past Encode. But now it refuses to build Filer::Util::Call Making Filter/Util/Call (dynamic) Writing Descrip.MMS for Filter::Util::Call %CREATE-I-EXISTS, [.LIB.AUTO.FILTER.UTIL.CALL] already exists %CREATE-E-DIRNOTCRE, [.BLIB.BIN] directory file not created -RMS-F-DIR, error in directory name %MMK-F-ERRUPD, error status %X109112C2 occurred when updating target BLIBDIRS.EXISTS %MMK-F-ERRUPD, error status %X1C14803C occurred when updating target DYNEXT Good luck, Abe -- Well, dereferencing that (as CvGV() would do) leads nowhere. Or, as the Ten Commandments for C Programmers quoth, Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end. -- Jarkko Hietaniemi on p5p @ 2002-05-14
Re: Cannot build bleadperl on OpenVMS
At 1:12 AM +0200 10/3/04, Abe Timmerman wrote: Bernd was kind enough to install a newer mmk TIMMERMAN:FAFNER$ mmk/ident %MMK-I-IDENT, this is the MadGoat Make Utility V3.9-9 No change in the buildprocess with the newer mmk however :-( After installing a new MMK, did you do a CMMK realclean in the ext/Encode directory before restarting the build? But now it refuses to build Filer::Util::Call Making Filter/Util/Call (dynamic) Writing Descrip.MMS for Filter::Util::Call %CREATE-I-EXISTS, [.LIB.AUTO.FILTER.UTIL.CALL] already exists %CREATE-E-DIRNOTCRE, [.BLIB.BIN] directory file not created -RMS-F-DIR, error in directory name %MMK-F-ERRUPD, error status %X109112C2 occurred when updating target BLIBDIRS.EXISTS %MMK-F-ERRUPD, error status %X1C14803C occurred when updating target DYNEXT Constructing the full path from this and your earlier post, the base directory for Filter::Util::Call's installed files will be: DISK$USER_2:[TIMMERMAN.KLAD.PERL-CURRENT.LIB.AUTO.FILTER.UTIL.CALL] That's 8 levels, which is the maximum allowed on OpenVMS VAX 7.2. When you go to create blib/lib under that, you get the not very specific error in directory name. OpenVMS Alpha 7.2 and later lifted the 8-level restriction (it's possible OpenVMS VAX 7.3 did as well, but I'm not sure about that). The typical way around this is to create a rooted logical name like so (trailing dot significant): $ define/translation=concealed PERLSMOKE_SRC DISK$USER_2:[TIMMERMAN.KLAD.PERL-CURRENT.] $ set default PERLSMOKE_SRC:[00] and then do MMK again. I'm assuming there will be some sort of DCL command procedure in Test::Smoke analogous to the shell/batch/whatever scripts for other platforms. If that is true, then that procedure should automate the rooted logical definition by setting the default directory to the top level of the Perl source tree and then invoking the following DCL magic: $ perlsmoke_src = F$PARSE(SYS$DISK:[-]NO_CONCEAL)-.][00-][-].;+.] $ DEFINE//TRANSLATION=CONCEALED PERLSMOKE_SRC 'perlsmoke_src' $ set default PERLSMOKE_SRC:[00] That will make it appear to the Perl build as though it is at the root of the volume, thus avoiding directory depth problems. -- Craig A. Berry mailto:[EMAIL PROTECTED] ... getting out of a sonnet is much more difficult than getting in. Brad Leithauser