Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Re^3: enc2xs not found! at Makefile.PL

by syphilis (Archbishop)
on Nov 20, 2019 at 23:05 UTC ( [id://11108953]=note: print w/replies, xml ) Need Help??


in reply to Re^2: enc2xs not found! at Makefile.PL
in thread enc2xs not found! at Makefile.PL

Failed to opendir 'D:\STRAWB~1\perl\lib\CORE' to find header files: No such file or directory at D:/Strawberry/perl/lib/ExtUtils/MM_Any.pm line 3049.

What version of Perl is this (please provide output of perl -V) ?
What version of Windows ? Also, what is the output of running set ?

It's a pretty weird error that you're getting - looks like some sort of ExtUtils::MakeMaker issue to me.
The actual error is coming from strawberry/perl/lib/ExtUtils/MM_Unix.pm ... I can't recall seeing that error ever before.
What version of EU::MM are you running:
perl -MExtUtils::MakeMaker -le "print $ExtUtils::MakeMaker::VERSION;"

In strawberry/perl/lib/ExtUtils/MM_Unix.pm, try changing the line:
if (not -f ($perl_h = $self->catfile($self->{PERL_INC},"perl.h")) to if(0)
and see if that works.

Without being able to reproduce the error it's rather hard for me to work out how to fix it.

Cheers,
Rob

Replies are listed 'Best First'.
Re^4: enc2xs not found! at Makefile.PL
by levW (Beadle) on Nov 24, 2019 at 09:54 UTC
    >perl -V Summary of my perl5 (revision 5 version 30 subversion 0) configuration +: Platform: osname=MSWin32 osvers=10.0.17763.529 archname=MSWin32-x86-multi-thread-64int uname='Win32 strawberry-perl 5.30.0.1 #1 Thu May 23 09:43:53 2019 +i386' config_args='undef' hint=recommended useposix=true d_sigaction=undef useithreads=define usemultiplicity=define use64bitint=define use64bitall=undef uselongdouble=undef usemymalloc=n default_inc_excludes_dot=define bincompat5005=undef Compiler: cc='gcc' ccflags =' -s -O2 -DWIN32 -D__USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE +_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -fw +rapv -fno-strict-aliasing -mms-bitfields' optimize='-s -O2' cppflags='-DWIN32' ccversion='' gccversion='8.3.0' gccosandvers='' intsize=4 longsize=4 ptrsize=4 doublesize=8 byteorder=12345678 doublekind=3 d_longlong=define longlongsize=8 d_longdbl=define longdblsize=12 longdblkind=3 ivtype='long long' ivsize=8 nvtype='double' nvsize=8 Off_t='long long' lseeksize=8 alignbytes=8 prototype=define Linker and Libraries: ld='g++' ldflags ='-s -L"D:\STRAWB~1\perl\lib\CORE" -L"D:\STRAWB~1\c\lib"' libpth=D:\STRAWB~1\c\lib D:\STRAWB~1\c\i686-w64-mingw32\lib D:\STR +AWB~1\c\lib\gcc\i686-w64-mingw32\8.3.0 libs= -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 + -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 - +lmpr -lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32 perllibs= -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomd +lg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_ +32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32 libc= so=dll useshrplib=true libperl=libperl530.a gnulibc_version='' Dynamic Linking: dlsrc=dl_win32.xs dlext=xs.dll d_dlsymun=undef ccdlflags=' ' cccdlflags=' ' lddlflags='-mdll -s -L"D:\STRAWB~1\perl\lib\CORE" -L"D:\STRAWB~1\c +\lib"' Characteristics of this binary (from libperl): Compile-time options: HAS_TIMES HAVE_INTERP_INTERN MULTIPLICITY PERLIO_LAYERS PERL_COPY_ON_WRITE PERL_DONT_CREATE_GVSV PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS PERL_MALLOC_WRAP PERL_OP_PARENT PERL_PRESERVE_IVUV USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE USE_LOCALE_NUMERIC USE_LOCALE_TIME USE_PERLIO USE_PERL_ATOF Built under MSWin32 Compiled at May 23 2019 09:49:35 @INC: D:/Strawberry/perl/site/lib D:/Strawberry/perl/vendor/lib D:/Strawberry/perl/lib

    =================================================

    >perl -MExtUtils::MakeMaker -le "print $ExtUtils::MakeMaker::VERSION;" 7.36

      I still can't reproduce the problem that you're experiencing.
      Using the same build of Strawberry Perl as you:
      C:\sisyphusion\Encode-IBM-0.11>perl -V Summary of my perl5 (revision 5 version 30 subversion 0) configuration +: Platform: osname=MSWin32 osvers=10.0.17763.529 archname=MSWin32-x86-multi-thread-64int uname='Win32 strawberry-perl 5.30.0.1 #1 Thu May 23 09:43:53 2019 +i386' .................
      I find no problem if Makefile.PL has been modified as I specified earlier:
      C:\sisyphusion\Encode-IBM-0.11>perl Makefile.PL enc2xs is C:\_64\strawberry-vanilla-5.30.0\perl\bin\enc2xs.bat encode.h is at C:\_32\strawberry-5.30.0\perl\lib\Encode Checking if your kit is complete... Looks good Generating a gmake-style Makefile Writing Makefile for Encode::IBM Writing MYMETA.yml and MYMETA.json C:\sisyphusion\Encode-IBM-0.11>gmake test Running Mkbootstrap for IBM () "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" -MExtUtils::Command -e ch +mod -- 644 "IBM.bs" "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" -MExtUtils::Command::MM - +e cp_nonempty -- IBM.bs blib\arch\auto\Encode\IBM\IBM.bs 644 "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" C:\_64\strawberry-vanill +a-5.30.0\perl\bin\enc2xs.bat -"Q" -o IBM_937_t.c -f IBM_937_t.fnm Reading ibm-937 (ibm-937) "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" C:\_64\strawberry-vanill +a-5.30.0\perl\bin\enc2xs.bat -"Q" -o IBM_964_t.c -f IBM_964_t.fnm Reading ibm-964 (ibm-964) "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" C:\_64\strawberry-vanill +a-5.30.0\perl\bin\enc2xs.bat -"Q" -o IBM_835_t.c -f IBM_835_t.fnm Reading ibm-835 (ibm-835) "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" C:\_64\strawberry-vanill +a-5.30.0\perl\bin\enc2xs.bat -"Q" -o IBM_939_t.c -f IBM_939_t.fnm Reading ibm-939 (ibm-939) "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" C:\_64\strawberry-vanill +a-5.30.0\perl\bin\enc2xs.bat -"Q" -o IBM_947_t.c -f IBM_947_t.fnm Reading ibm-947 (ibm-947) "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" "C:\_32\strawberry-5.30.0 +\perl\lib\ExtUtils/xsubpp" -nolinenumbers -typemap C:\_32\strawberry +-5.30.0\perl\lib\ExtUtils\typemap IBM.xs > IBM.xsc "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" -MExtUtils::Command -e mv + -- IBM.xsc IBM.c gcc -c -IC:\_32\strawberry-5.30.0\perl\lib\Encode -s -O2 -DWIN32 -D__ +USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT +-DPERL_IMPLICIT_SYS -DUSE_PERLIO -fwrapv -fno-strict-aliasing -mms-bi +tfields -s -O2 -DVERSION=\"0.11\" -DXS_VERSION=\"0.11\" "-IC:\_32\ +strawberry-5.30.0\perl\lib\CORE" IBM.c gcc -c -IC:\_32\strawberry-5.30.0\perl\lib\Encode -s -O2 -DWIN32 -D__ +USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT +-DPERL_IMPLICIT_SYS -DUSE_PERLIO -fwrapv -fno-strict-aliasing -mms-bi +tfields -s -O2 -DVERSION=\"0.11\" -DXS_VERSION=\"0.11\" "-IC:\_32\ +strawberry-5.30.0\perl\lib\CORE" IBM_835_ t.c gcc -c -IC:\_32\strawberry-5.30.0\perl\lib\Encode -s -O2 -DWIN32 -D__ +USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT +-DPERL_IMPLICIT_SYS -DUSE_PERLIO -fwrapv -fno-strict-aliasing -mms-bi +tfields -s -O2 -DVERSION=\"0.11\" -DXS_VERSION=\"0.11\" "-IC:\_32\ +strawberry-5.30.0\perl\lib\CORE" IBM_937_t.c gcc -c -IC:\_32\strawberry-5.30.0\perl\lib\Encode -s -O2 -DWIN32 -D__ +USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT +-DPERL_IMPLICIT_SYS -DUSE_PERLIO -fwrapv -fno-strict-aliasing -mms-bi +tfields -s -O2 -DVERSION=\"0.11\" -DXS_VERSION=\"0.11\" "-IC:\_32\ +strawberry-5.30.0\perl\lib\CORE" IBM_939_t.c gcc -c -IC:\_32\strawberry-5.30.0\perl\lib\Encode -s -O2 -DWIN32 -D__ +USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT +-DPERL_IMPLICIT_SYS -DUSE_PERLIO -fwrapv -fno-strict-aliasing -mms-bi +tfields -s -O2 -DVERSION=\"0.11\" -DXS_VERSION=\"0.11\" "-IC:\_32\ +strawberry-5.30.0\perl\lib\CORE" IBM_947_t.c gcc -c -IC:\_32\strawberry-5.30.0\perl\lib\Encode -s -O2 -DWIN32 -D__ +USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT +-DPERL_IMPLICIT_SYS -DUSE_PERLIO -fwrapv -fno-strict-aliasing -mms-bi +tfields -s -O2 -DVERSION=\"0.11\" -DXS_VERSION=\"0.11\" "-IC:\_32\ +strawberry-5.30.0\perl\lib\CORE" IBM_964_t.c "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" -MExtUtils::Mksymlists \ + -e "Mksymlists('NAME'=>\"Encode::IBM\", 'DLBASE' => 'IBM', 'DL_FU +NCS' => { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" g++.exe IBM.def -o blib\arch\auto\Encode\IBM\IBM.xs.dll -mdll -s -L"C: +\_32\strawberry-5.30.0\perl\lib\CORE" -L"C:\_32\strawberry-5.30.0\c\l +ib" IBM.o IBM_835_t.o IBM_937_t.o IBM_939_t.o IBM_947_t.o IBM_964_t.o + "C:\_32\strawberry-5.30.0\perl\lib\CORE\libperl530.a" -lmoldname - +lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 + -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm -lversio +n -lodbc32 -lodbccp32 -lcomctl32 -Wl,--enable-auto-image-base "C:\_32 +\strawberry-5.30.0\perl\bin\perl.exe" -MExtUtils::Command -e chmod -- + 755 blib\arch\auto\Encode\IBM\IBM.xs.dll cp lib/Encode/IBM.pm blib\lib\Encode\IBM.pm cp lib/Encode/IBM/835SOSI.pm blib\lib\Encode\IBM\835SOSI.pm cp lib/Encode/IBM/939SOSI.pm blib\lib\Encode\IBM\939SOSI.pm cp lib/Encode/IBM/835SOSI/TSGH.pm blib\lib\Encode\IBM\835SOSI\TSGH.pm cp lib/Encode/IBM/947SOSI.pm blib\lib\Encode\IBM\947SOSI.pm "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" "-MExtUtils::Command::MM" + "-MTest:: Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib\l +ib', 'blib \arch')" t/*.t t/IBM.t .. ok All tests successful. Files=1, Tests=3, 1 wallclock secs ( 0.03 usr + 0.00 sys = 0.03 CPU +) Result: PASS C:\sisyphusion\Encode-IBM-0.11>gmake install "C:\_32\strawberry-5.30.0\perl\bin\perl.exe" -MExtUtils::Command::MM - +e cp_nonem pty -- IBM.bs blib\arch\auto\Encode\IBM\IBM.bs 644 Files found in blib\arch: installing files in blib\lib into architectu +re depende nt library tree Installing C:\_32\strawberry-5.30.0\perl\site\lib\auto\Encode\IBM\IBM. +xs.dll Appending installation info to C:\_32\strawberry-5.30.0\perl\lib/perll +ocal.pod require Encode::IBM; require Encode::IBM::835SOSI; require Encode::IBM::939SOSI; require Encode::IBM::947SOSI; require Encode::IBM::835SOSI::TSGH; require Encode; require Encode::compat; require Encode::Locale; require Encode::compat::5006001; require Encode::compat::Alias; Constant subroutine Encode::FB_PERLQQ redefined at C:/_64/strawberry-v +anilla-5.3 0.0/perl/lib/constant.pm line 171. Constant subroutine Encode::FB_HTMLCREF redefined at C:/_64/strawberry +-vanilla-5 .30.0/perl/lib/constant.pm line 171. Constant subroutine Encode::FB_XMLCREF redefined at C:/_64/strawberry- +vanilla-5. 30.0/perl/lib/constant.pm line 171. Prototype mismatch: sub Encode::find_encoding ($;$) vs none at C:/_64/ +strawberry -vanilla-5.30.0/perl/vendor/lib/Encode/compat/common.pm line 80. Prototype mismatch: sub Encode::encode_utf8 ($) vs ($;$) at C:/_64/str +awberry-va nilla-5.30.0/perl/vendor/lib/Encode/compat/common.pm line 88. require Encode::compat::common; require Encode; require Encode::Alias; require Encode::Byte; require Encode::CJKConstants; require Encode::CN; require Encode::Config; require Encode::ConfigLocal; require Encode::EBCDIC; require Encode::Encoder; require Encode::Encoding; require Encode::GSM0338; require Encode::Guess; require Encode::JP; require Encode::KR; require Encode::Symbol; require Encode::TW; require Encode::Unicode; require Encode::CN::HZ; require Encode::JP::H2Z; require Encode::JP::JIS7; require Encode::KR::2022_KR; require Encode::MIME::Header; require Encode::MIME::Name; require Encode::MIME::Header::ISO_2022_JP; require Encode::Unicode::UTF7; $Encode::ExtModule{'ibm-835'} = "Encode::IBM"; $Encode::ExtModule{'ibm-835-sosi'} = "Encode::IBM"; $Encode::ExtModule{'ibm-835-sosi-tsgh'} = "Encode::IBM"; $Encode::ExtModule{'ibm-937'} = "Encode::IBM"; $Encode::ExtModule{'ibm-939'} = "Encode::IBM"; $Encode::ExtModule{'ibm-939-sosi'} = "Encode::IBM"; $Encode::ExtModule{'ibm-947'} = "Encode::IBM"; $Encode::ExtModule{'ibm-947-sosi'} = "Encode::IBM"; $Encode::ExtModule{'ibm-964'} = "Encode::IBM"; C:/_64/strawberry-vanilla-5.30.0/perl/lib/Encode Generating C:\_64\strawberry-vanilla-5.30.0\perl\lib\Encode\ConfigLoca +l.pm... C:\sisyphusion\Encode-IBM-0.11>
      I don't think I can help further until I see the outputs of both:
      type Makefile.PL amd set PATH
      Cheers,
      Rob
        D:\perl64\cpan\sources\modules\encode-3.01\Encode-3.01>type Makefile.P +L &#8745;&#9559;&#9488;# # $Id: Makefile.PL,v 2.22 2017/10/06 22:21:53 dankogai Exp $ # use 5.007003; use strict; use warnings; use utf8; use ExtUtils::MakeMaker; use File::Spec; use Config; # Just for sure :) my %ARGV = map { my @r = split /=/,$_; defined $r[1] or $r[1]=1; @r } +@ARGV; $ARGV{DEBUG} and warn "$_ => $ARGV{$_}\n" for sort keys %ARGV; $ENV{PERL_CORE} ||= $ARGV{PERL_CORE} if $ARGV{PERL_CORE}; # similar strictness as in core my $ccflags = $Config{ccflags}; if (!$ENV{PERL_CORE}) { if (my $gccver = $Config{gccversion}) { $gccver =~ s/\.//g; $gccver =~ s/ .*//; $gccver .= "0" while length $gccver < 3; $gccver = 0+$gccver; $ccflags .= ' -Werror=declaration-after-statement' if $gccver > 41 +2; $ccflags .= ' -Wpointer-sign' if !$Config{d_cplusplus} and $gccver + > 400; $ccflags .= ' -fpermissive' if $Config{d_cplusplus}; } } my %tables = ( def_t => [ 'ascii.ucm', '8859-1.ucm', 'cp1252.ucm', 'null.ucm', 'ctrl.ucm', ] ); my @exe_files = qw(bin/enc2xs bin/piconv bin/encguess ); my @more_exe_files = qw( unidump ); my @pmlibdirs = qw(lib Encode); $ARGV{MORE_SCRIPTS} and push @exe_files, @more_exe_files; $ARGV{INSTALL_UCM} and push @pmlibdirs, "ucm"; WriteMakefile( NAME => "Encode", EXE_FILES => \@exe_files, VERSION_FROM => 'Encode.pm', ABSTRACT_FROM=> 'Encode.pm', AUTHOR => 'Dan Kogai <dankogai@dan.co.jp>', OBJECT => '$(O_FILES)', 'dist' => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', DIST_DEFAULT => 'all tardist', }, CCFLAGS => $ccflags, INC => '-I' . File::Spec->catfile( '.', 'Encode' ), LICENSE => 'perl', PREREQ_PM => { Exporter => '5.57', # use Exporter 'import'; parent => '0.221', # version bundled with 5.10.1 Storable => '0', # bundled with Perl 5.7.3 }, TEST_REQUIRES => { 'Test::More' => '0.81_01', }, PMLIBDIRS => \@pmlibdirs, INSTALLDIRS => ($] < 5.011 ? 'perl' : 'site'), META_MERGE => { resources => { repository => 'https://github.com/dankogai/p5-encode', }, x_contributors => [ 'Alex Davies <alex.davies@talktalk.net>', 'Alex Kapranoff <alex@kapranoff.ru>', 'Alex Vandiver <alex@chmrr.net>', 'Andreas J. Koenig <andreas.koenig@anima.de>', 'Andrew Pennebaker <andrew.pennebaker@networkedinsights.co +m>', 'Andy Grundman <andyg@activestate.com>', 'Anton Tagunov <tagunov@motor.ru>', 'Autrijus Tang <autrijus@autrijus.org>', 'Benjamin Goldberg <goldbb2@earthlink.net>', 'Bjoern Hoehrmann <derhoermi@gmx.net>', 'Bjoern Jacke <debianbugs@j3e.de>', 'bulk88 <bulk88@hotmail.com>', 'Craig A. Berry <craigberry@mac.com>', 'Curtis Jewell <csjewell@cpan.org>', 'Dan Kogai <dankogai@dan.co.jp>', 'Dave Evans <dave@rudolf.org.uk>', 'David Golden <dagolden@cpan.org>', 'David Steinbrunner <dsteinbrunner@pobox.com>', 'Deng Liu <dengliu@ntu.edu.tw>', 'Dominic Dunlop <domo@computer.org>', 'drry', 'Elizabeth Mattijsen <liz@dijkmat.nl>', 'Flavio Poletti <flavio@polettix.it>', 'Gerrit P. Haase <gp@familiehaase.de>', 'Gisle Aas <gisle@ActiveState.com>', 'Graham Barr <gbarr@pobox.com>', 'Graham Knop <haarg@haarg.org>', 'Graham Ollis <perl@wdlabs.com>', 'Gurusamy Sarathy <gsar@activestate.com>', 'H.Merijn Brand <h.m.brand@xs4all.nl>', 'Hugo van der Sanden <hv@crypt.org>', 'chansen <chansen@cpan.org>', 'Chris Nandor <pudge@pobox.com>', 'Inaba Hiroto <inaba@st.rim.or.jp>', 'Jarkko Hietaniemi <jhi@iki.fi>', 'Jesse Vincent <jesse@fsck.com>', 'Jungshik Shin <jshin@mailaps.org>', 'Karen Etheridge <ether@cpan.org>', 'Karl Williamson <khw@cpan.org>', 'Kenichi Ishigaki <ishigaki@cpan.org>', 'KONNO Hiroharu <hiroharu.konno@bowneglobal.co.jp>', 'Laszlo Molnar <ml1050@freemail.hu>', 'Makamaka <makamaka@donzoko.net>', 'Mark-Jason Dominus <mjd@plover.com>', 'Masahiro Iuchi <masahiro.iuchi@gmail.com>', 'MATSUNO Tokuhiro <tokuhirom+cpan@gmail.com>', 'Mattia Barbon <mbarbon@dsi.unive.it>', 'Michael G Schwern <schwern@pobox.com>', 'Michael LaGrasta <michael@lagrasta.com>', 'Miron Cuperman <miron@hyper.to>', 'Moritz Lenz <moritz@faui2k3.org>', 'MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>', 'Nick Ing-Simmons <nick@ing-simmons.net>', 'Nicholas Clark <nick@ccl4.org>', 'Olivier Mengu&#9500;&#8976; <dolmen@cpan.org>', 'otsune', 'Pali <pali@cpan.org>', 'Paul Marquess <paul_marquess@yahoo.co.uk>', 'Peter Prymmer <pvhp@best.com>', 'Peter Rabbitson <ribasushi@cpan.org>', 'Philip Newton <pne@cpan.org>', 'Piotr Fusik <pfusik@op.pl>', 'Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>', 'Randy Stauner <randy@magnificent-tears.com>', 'Reini Urban <rurban@cpan.org>', 'Robin Barker <rmb1@cise.npl.co.uk>', 'SADAHIRO Tomoyuki <SADAHIRO@cpan.org>', 'Simon Cozens <simon@netthink.co.uk>', 'Slaven Rezic <SREZIC@cpan.org>', 'Spider Boardman <spider@web.zk3.dec.com>', 'Steve Hay <steve.m.hay@googlemail.com>', 'Steve Peters <steve@fisharerojo.org>', 'SUGAWARA Hajime <sugawara@hdt.co.jp>', 'SUZUKI Norio <ZAP00217@nifty.com>', 'szr8 <blz.marcel@gmail.com>', 'Tatsuhiko Miyagawa <miyagawa@bulknews.net>', 'Tels <perl_dummy@bloodgate.com>', 'Tony Cook <tony@develop-help.com>', 'Vadim Konovalov <vkonovalov@peterstar.ru>', 'Victor <victor@vsespb.ru>', 'Ville Skytt&#9500;ñ <ville.skytta@iki.fi>', 'Vincent van Dam <vvandam@sandvine.com>', 'Yitzchak Scott-Thoennes <sthoenna@efn.org>', ], }, ); package MY; sub post_initialize { my ($self) = @_; my %o; # Find existing O_FILES foreach my $f (@{$self->{'O_FILES'}}) { $o{$f} = 1; } my $x = $self->{'OBJ_EXT'}; # Add the table O_FILES foreach my $e (keys %tables) { $o{$e.$x} = 1; } # Trick case-blind filesystems. delete $o{'encode'.$x}; $o{'Encode'.$x} = 1; # Reset the variable $self->{'O_FILES'} = [sort keys %o]; my @files; foreach my $table (sort keys %tables) { foreach my $ext (qw($(OBJ_EXT) .c .h .exh .fnm)) { push (@files,$table.$ext); } $self->{SOURCE} .= " $table.c" if $^O eq 'MacOS' && $self->{SOURCE} !~ /\b$table\.c\b/; } $self->{'clean'}{'FILES'} .= join(' ',@files); return ''; } sub postamble { my $self = shift; my $dir = $self->catdir($self->curdir,'ucm'); my $str = "# Encode\$(OBJ_EXT) does not depend on .c files direct +ly\n"; $str .= "# (except Encode.c), but on .h and .exh files written by + enc2xs\n"; $str .= $^O eq 'MacOS' ? 'Encode.c.{$(MACPERL_BUILD_EXT_STATIC)}. +o :' : 'Encode$(OBJ_EXT) :'; $str .= ' Encode.c'; foreach my $table (sort keys %tables) { $str .= " $table.c"; } $str .= "\n\n"; foreach my $table (sort keys %tables) { my $numlines = 1; my $lengthsofar = length($str); my $continuator = ''; #my $enc2xs = $self->catfile('bin', 'enc2xs'); my $enc2xs ='D:\Strawberry\perl\bin\enc2xs.bat'; $str .= "$table.c : $enc2xs Makefile.PL"; foreach my $file (@{$tables{$table}}) { $str .= $continuator.' '.$self->catfile($dir,$file); if ( length($str)-$lengthsofar > 128*$numlines ) { $continuator .= " \\\n\t"; $numlines++; } else { $continuator = ''; } } my $plib = $self->{PERL_CORE} ? '"-I$(PERL_LIB)"' : ''; $plib .= " -MCross=$::Cross::platform" if defined $::Cross::platfo +rm; my $ucopts = '-"Q" -"O"'; $str .= qq{\n\t\$(PERL) $plib $enc2xs $ucopts -o \$\@ -f $table.fnm\n\ +n}; open (FILELIST, ">$table.fnm") || die "Could not open $table.fnm: $!"; foreach my $file (@{$tables{$table}}) { print FILELIST $self->catfile($dir,$file) . "\n"; } close(FILELIST); } return $str; }

        ==============================

        D:\perl64\cpan\sources\modules\encode-3.01\Encode-3.01>set PATH Path=C:\Program Files (x86)\IBM\RationalSDLC\common;C:\Program Files ( +x86)\Common Files\ISIS\isiscomm\w3\lib;C:\windows\system32;C:\windows +;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\ +;C:\windows\System32\OpenSSH\;D:\Strawberry\c\bin;D:\Strawberry\perl\ +site\bin;D:\Strawberry\perl\bin;C:\Program Files (x86)\IBM\RationalSD +LC\ClearCase\bin;C:\Program Files (x86)\IBM\gsk8\lib;C:\Program Files + (x86)\IBM\gsk8\bin;C:\Program Files (x86)\IBM\RationalSDLC\clearcase +\RemoteClient\cteapis;D:\Strawberry\perl\vendor;D:\Strawberry\perl\ve +ndor\lib\Encode-3.01\bin;C:\Users\26842\AppData\Local\Microsoft\Windo +wsApps PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
Re^4: enc2xs not found! at Makefile.PL
by Anonymous Monk on Nov 21, 2019 at 04:31 UTC
      Run latest enc2xs/makemaker then see whats what

      Yeah - the OP could give that a go.
      What does it involve exactly ? That is, what's the exact command that gets run, and from which directory does one need to run it ?

      The oldest Windows perl I have is perl-5.8.8 (enc2xs-2.01) and it's building Encode-IBM-0.11 just fine apart from a million or so warnings about:
      attention : initialization discards 'const' qualifier from pointer tar +get type [enabled by default]"
      But the build succeeds, and the test suite passes ... and no bizarre warnings produced during the 'perl Makefile.PL' step.

      The oldest Strawberry Perl I have is perl-5.12.2 (enc2xs-2.07) which also builds Encode-IBM-0.11 just fine (and no warnings).
      Strawberry Perl 5.30.0 has enc2xs-2.21.
      According to the note at the beginning of the Makefile.PL (which I hadn't noticed), it was generated using enc2xs-2.05.

      Cheers,
      Rob

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11108953]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (1)
As of 2024-04-24 14:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found