pjf / ipc-system-simple

Perl module to make running system commands and capturing errors as simple as possible.
http://search.cpan.org/perldoc?IPC::System::Simple
Other
19 stars 20 forks source link

On Windows, cpanm IPC::System::Simple fails due to missing dependency #17

Closed nanis closed 4 years ago

nanis commented 8 years ago

The distro does not specify Win32::Process as a dependency, and tests fail. This can be avoided by specifying Win32::Process as a dependency on Windows so cpanm builds, tests, and installs it before attempting to install IPC::System::Simple.

jkeenan commented 4 years ago

The distro does not specify Win32::Process as a dependency, and tests fail. This can be avoided by specifying Win32::Process as a dependency on Windows so cpanm builds, tests, and installs it before attempting to install IPC::System::Simple.

I believe that we have addressed this issue in CPAN versions 1.28 and later (currently, 1.29). Can you confirm?

Thank you very much. Jim Keenan

nanis commented 4 years ago
C:\Users\x> cpanm IPC::System::Simple
--> Working on IPC::System::Simple
Fetching https://cpan.metacpan.org/authors/id/J/JK/JKEENAN/IPC-System-Simple-1.29.tar.gz ... OK
Configuring IPC-System-Simple-1.29 ... OK
==> Found dependencies: Win32::ShellQuote
--> Working on Win32::ShellQuote
Fetching https://cpan.metacpan.org/authors/id/H/HA/HAARG/Win32-ShellQuote-0.003001.tar.gz ... OK
Configuring Win32-ShellQuote-0.003001 ... OK
Building and testing Win32-ShellQuote-0.003001 ... OK
Successfully installed Win32-ShellQuote-0.003001
Building and testing IPC-System-Simple-1.29 ... FAIL
! Installing IPC::System::Simple failed. See C:\Users\x\.cpanm\work\1584885524.8884\build.log for details. Retry with --force to force install it.
1 distribution installed

And, here is the build log:

cpanm (App::cpanminus) 1.7044 on perl 5.030001 built for MSWin32-x64-multi-thread
Work directory is C:\Users\x/.cpanm/work/1584885524.8884
You have make "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.25.28610\bin\HostX64\x64\nmake.exe"
You have LWP 6.43
Falling back to Archive::Tar 2.32
You have C:\opt\bin\unzip.exe
Searching IPC::System::Simple on mirror https://cpan.metacpan.org ...
Downloading index file https://cpan.metacpan.org/modules/02packages.details.txt.gz ...
Uncompressing index file...
--> Working on IPC::System::Simple
Fetching https://cpan.metacpan.org/authors/id/J/JK/JKEENAN/IPC-System-Simple-1.29.tar.gz
-> OK
Unpacking IPC-System-Simple-1.29.tar.gz
Entering IPC-System-Simple-1.29
Checking configure dependencies from META.json
Checking if you have ExtUtils::MakeMaker 6.58 ... Yes (7.34)
Configuring IPC-System-Simple-1.29
Running Makefile.PL
Warning: prerequisite Win32::ShellQuote 0 not found.
Checking if your kit is complete...
Looks good
Generating a nmake-style Makefile
Writing Makefile for IPC::System::Simple
Writing MYMETA.yml and MYMETA.json
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have re 0 ... Yes (0.37)
Checking if you have ExtUtils::MakeMaker 0 ... Yes (7.34)
Checking if you have warnings 0 ... Yes (1.44)
Checking if you have Win32::ShellQuote 0 ... No
Checking if you have Test::More 0 ... Yes (1.302162)
Checking if you have Exporter 0 ... Yes (5.73)
Checking if you have constant 0 ... Yes (1.33)
Checking if you have Test 0 ... Yes (1.31)
Checking if you have File::Basename 0 ... Yes (2.85)
Checking if you have POSIX 0 ... Yes (1.88)
Checking if you have Carp 0 ... Yes (1.50)
Checking if you have strict 0 ... Yes (1.11)
Checking if you have List::Util 0 ... Yes (1.50)
Checking if you have Scalar::Util 0 ... Yes (1.50)
==> Found dependencies: Win32::ShellQuote
Searching Win32::ShellQuote on mirror https://cpan.metacpan.org ...
--> Working on Win32::ShellQuote
Fetching https://cpan.metacpan.org/authors/id/H/HA/HAARG/Win32-ShellQuote-0.003001.tar.gz
-> OK
Unpacking Win32-ShellQuote-0.003001.tar.gz
Entering Win32-ShellQuote-0.003001
Checking configure dependencies from META.json
Configuring Win32-ShellQuote-0.003001
Running Makefile.PL
Checking if your kit is complete...
Looks good
Generating a nmake-style Makefile
Writing Makefile for Win32::ShellQuote
Writing MYMETA.yml and MYMETA.json
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have File::Basename 0 ... Yes (2.85)
Checking if you have Test::More 0.94 ... Yes (1.302162)
Checking if you have File::Spec 0 ... Yes (3.78)
Building and testing Win32-ShellQuote-0.003001

Microsoft (R) Program Maintenance Utility Version 14.25.28610.4
Copyright (C) Microsoft Corporation.  All rights reserved.

cp lib/Win32/ShellQuote.pm blib\lib\Win32\ShellQuote.pm

Microsoft (R) Program Maintenance Utility Version 14.25.28610.4
Copyright (C) Microsoft Corporation.  All rights reserved.

    "C:\opt\perl\5.30.1\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib\lib', 'blib\arch')" t\*.t
t\quote_system.t .. ok
t\quoting.t ....... ok
t\unescape_cmd.t .. ok
t\unquoting.t ..... ok
All tests successful.
Files=4, Tests=227,  7 wallclock secs ( 0.05 usr +  0.05 sys =  0.09 CPU)
Result: PASS

Microsoft (R) Program Maintenance Utility Version 14.25.28610.4
Copyright (C) Microsoft Corporation.  All rights reserved.

Installing C:\opt\perl\site\5.30.1\lib\Win32\ShellQuote.pm
Appending installation info to c:\opt\perl\5.30.1\lib/perllocal.pod
-> OK
Successfully installed Win32-ShellQuote-0.003001
Installing C:\opt\perl\site\5.30.1\lib\MSWin32-x64-multi-thread\.meta\Win32-ShellQuote-0.003001\install.json
Installing C:\opt\perl\site\5.30.1\lib\MSWin32-x64-multi-thread\.meta\Win32-ShellQuote-0.003001\MYMETA.json
Building and testing IPC-System-Simple-1.29

Microsoft (R) Program Maintenance Utility Version 14.25.28610.4
Copyright (C) Microsoft Corporation.  All rights reserved.

cp lib/IPC/System/Simple.pm blib\lib\IPC\System\Simple.pm

Microsoft (R) Program Maintenance Utility Version 14.25.28610.4
Copyright (C) Microsoft Corporation.  All rights reserved.

    "C:\opt\perl\5.30.1\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib\lib', 'blib\arch')" t\*.t
Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 7) line 2.
BEGIN failed--compilation aborted at (eval 7) line 2.
BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
Compilation failed in require at t\01_load.t line 5.
BEGIN failed--compilation aborted at t\01_load.t line 5.
t\01_load.t ........... 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 1/1 subtests 
Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line 2.
BEGIN failed--compilation aborted at (eval 13) line 2.
BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
Compilation failed in require at t\02_exit.t line 15.
BEGIN failed--compilation aborted at t\02_exit.t line 15.
t\02_exit.t ........... 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 28/28 subtests 
t\03_signal.t ......... skipped: Signals not implemented on Win32

#   Failed test 'use IPC::System::Simple;'
#   at t\04_capture.t line 20.
#     Tried to use 'IPC::System::Simple'.
#     Error:  Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 15) line 2.
# BEGIN failed--compilation aborted at (eval 15) line 2.
# BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
# Compilation failed in require at t\04_capture.t line 20.
# BEGIN failed--compilation aborted at t\04_capture.t line 20.
Undefined subroutine &main::capture called at t\04_capture.t line 25.
# Looks like your test exited with 255 just after 1.
t\04_capture.t ........ 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 12/12 subtests 

#   Failed test 'use IPC::System::Simple;'
#   at t\05_multi_capture.t line 19.
#     Tried to use 'IPC::System::Simple'.
#     Error:  Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 15) line 2.
# BEGIN failed--compilation aborted at (eval 15) line 2.
# BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
# Compilation failed in require at t\05_multi_capture.t line 19.
# BEGIN failed--compilation aborted at t\05_multi_capture.t line 19.
Undefined subroutine &main::capture called at t\05_multi_capture.t line 27.
# Looks like your test exited with 255 just after 1.
t\05_multi_capture.t .. 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 14/14 subtests 

#   Failed test 'use IPC::System::Simple;'
#   at t\06_fail.t line 6.
#     Tried to use 'IPC::System::Simple'.
#     Error:  Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 15) line 2.
# BEGIN failed--compilation aborted at (eval 15) line 2.
# BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
# Compilation failed in require at t\06_fail.t line 6.
# BEGIN failed--compilation aborted at t\06_fail.t line 6.

#   Failed test 'Non-existent, run '
#   at t\06_fail.t line 14.
#                   'Undefined subroutine &main::run called at t\06_fail.t line 13.
# '
#     doesn't match '(?^:failed to start)'

#   Failed test 'Empty call to run'
#   at t\06_fail.t line 19.
#                   'Undefined subroutine &main::run called at t\06_fail.t line 18.
# '
#     doesn't match '(?^:IPC::System::Simple::run called with no arguments)'

#   Failed test 'Empty call to capture'
#   at t\06_fail.t line 22.
#                   'Undefined subroutine &main::capture called at t\06_fail.t line 21.
# '
#     doesn't match '(?^:IPC::System::Simple::capture called with no arguments)'

#   Failed test 'No command passed to run'
#   at t\06_fail.t line 25.
#                   'Undefined subroutine &main::run called at t\06_fail.t line 24.
# '
#     doesn't match '(?^:IPC::System::Simple::run called with no command)'

#   Failed test 'No command passed to capture'
#   at t\06_fail.t line 28.
#                   'Undefined subroutine &main::capture called at t\06_fail.t line 27.
# '
#     doesn't match '(?^:IPC::System::Simple::capture called with no command)'

#   Failed test 'Not existent, capture'
#   at t\06_fail.t line 32.
#                   'Undefined subroutine &main::capture called at t\06_fail.t line 31.
# '
#     doesn't match '(?^:failed to start)'

#   Failed test 'Not existent, capture'
#   at t\06_fail.t line 36.
#                   'Undefined subroutine &main::capture called at t\06_fail.t line 35.
# '
#     doesn't match '(?^:failed to start)'
# Looks like you failed 8 tests of 8.
t\06_fail.t ........... 
Dubious, test returned 8 (wstat 2048, 0x800)
Failed 8/8 subtests 

#   Failed test 'use IPC::System::Simple;'
#   at t\07_taint.t line 16.
#     Tried to use 'IPC::System::Simple'.
#     Error:  Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib) at (eval 15) line 2.
# BEGIN failed--compilation aborted at (eval 15) line 2.
# BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
# Compilation failed in require at t\07_taint.t line 16.
# BEGIN failed--compilation aborted at t\07_taint.t line 16.

#   Failed test 'Single-arg, tainted ENV'
#   at t\07_taint.t line 32.
#                   'Undefined subroutine &main::run called at t\07_taint.t line 31.
# '
#     doesn't match '(?^:called with tainted environment)'

#   Failed test 'Multi-arg, tainted ENV'
#   at t\07_taint.t line 35.
#                   'Undefined subroutine &main::run called at t\07_taint.t line 34.
# '
#     doesn't match '(?^:called with tainted environment)'

#   Failed test 'Single-arg, tainted data'
#   at t\07_taint.t line 41.
#                   'Undefined subroutine &main::run called at t\07_taint.t line 40.
# '
#     doesn't match '(?^:called with tainted argument)'

#   Failed test 'multi-arg, tainted data'
#   at t\07_taint.t line 44.
#                   'Undefined subroutine &main::run called at t\07_taint.t line 43.
# '
#     doesn't match '(?^:called with tainted argument)'

#   Failed test 'Single-arg, clean data and ENV'
#   at t\07_taint.t line 47.
#          got: 'Undefined subroutine &main::run called at t\07_taint.t line 46.
# '
#     expected: ''

#   Failed test 'Multi-arg, clean data and ENV'
#   at t\07_taint.t line 50.
#          got: 'Undefined subroutine &main::run called at t\07_taint.t line 49.
# '
#     expected: ''

#   Failed test 'Returns of multi-arg capture should be tainted'
#   at t\07_taint.t line 53.

#   Failed test 'Returns of single-arg capture should be tainted'
#   at t\07_taint.t line 56.
# Looks like you failed 9 tests of 13.
t\07_taint.t .......... 
Dubious, test returned 9 (wstat 2304, 0x900)
Failed 9/13 subtests 
t\08_core.t ........... skipped: BSD::Resource required for coredump tests
Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line 2.
BEGIN failed--compilation aborted at (eval 13) line 2.
BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
Compilation failed in require at t\09_system.t line 15.
BEGIN failed--compilation aborted at t\09_system.t line 15.
t\09_system.t ......... 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 24/24 subtests 

#   Failed test 'use IPC::System::Simple;'
#   at t\10_formatting.t line 5.
#     Tried to use 'IPC::System::Simple'.
#     Error:  Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib) at (eval 15) line 2.
# BEGIN failed--compilation aborted at (eval 15) line 2.
# BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
# Compilation failed in require at t\10_formatting.t line 5.
# BEGIN failed--compilation aborted at t\10_formatting.t line 5.

#   Failed test 'Taint pkg only once'
#   at t\10_formatting.t line 15.
#                   'Undefined subroutine &main::run called at t\10_formatting.t line 12.
# '
#     doesn't match '(?^:^IPC::System::Simple::run called with tainted argument)'

#   Failed test 'Taint env only once'
#   at t\10_formatting.t line 21.
#                   'Undefined subroutine &main::run called at t\10_formatting.t line 18.
# '
#     doesn't match '(?^:^IPC::System::Simple::run called with tainted environment)'
#   Failed test 'Package mentioned only once'
#   at t\10_formatting.t line 33.
#                   'Undefined subroutine &main::run called at t\10_formatting.t line 30.
# '
#     doesn't match '(?^:^IPC::System::Simple::run called with no arguments)'
#   Failed test 'Package mentioned only once'
#   at t\10_formatting.t line 39.
#                   'Undefined subroutine &main::run called at t\10_formatting.t line 36.
# '
#     doesn't match '(?^:^IPC::System::Simple::run called with no command)'
# Looks like you failed 5 tests of 5.
t\10_formatting.t ..... 
Dubious, test returned 5 (wstat 1280, 0x500)
Failed 5/5 subtests 
Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 7) line 2.
BEGIN failed--compilation aborted at (eval 7) line 2.
BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
Compilation failed in require at t\11_newlines.t line 3.
BEGIN failed--compilation aborted at t\11_newlines.t line 3.
t\11_newlines.t ....... 
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run 
Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 7) line 2.
BEGIN failed--compilation aborted at (eval 7) line 2.
BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
Compilation failed in require at t\12_systemx.t line 4.
BEGIN failed--compilation aborted at t\12_systemx.t line 4.
t\12_systemx.t ........ 
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run 
Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line 2.
BEGIN failed--compilation aborted at (eval 13) line 2.
BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
Compilation failed in require at t\13_exports.t line 10.
BEGIN failed--compilation aborted at t\13_exports.t line 10.
t\13_exports.t ........ 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 1/1 subtests 
Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line 2.
BEGIN failed--compilation aborted at (eval 13) line 2.
BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
Compilation failed in require at t\14_uninitialised.t line 6.
BEGIN failed--compilation aborted at t\14_uninitialised.t line 6.
t\14_uninitialised.t .. 
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run 
Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line 2.
BEGIN failed--compilation aborted at (eval 13) line 2.
BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
Compilation failed in require at t\args.t line 6.
BEGIN failed--compilation aborted at t\args.t line 6.
t\args.t .............. 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 56/56 subtests 
Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line 2.
BEGIN failed--compilation aborted at (eval 13) line 2.
BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
Compilation failed in require at t\internal.t line 4.
BEGIN failed--compilation aborted at t\internal.t line 4.
t\internal.t .......... 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 3/3 subtests 
Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line 2.
BEGIN failed--compilation aborted at (eval 13) line 2.
BEGIN failed--compilation aborted at C:\Users\x\.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48.
Compilation failed in require at t\win32.t line 5.
BEGIN failed--compilation aborted at t\win32.t line 5.
t\win32.t ............. 
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run 

Test Summary Report
-------------------
t\01_load.t         (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 1 tests but ran 0.
t\02_exit.t         (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 28 tests but ran 0.
t\04_capture.t      (Wstat: 65280 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 12 tests but ran 1.
t\05_multi_capture.t (Wstat: 65280 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 14 tests but ran 1.
t\06_fail.t         (Wstat: 2048 Tests: 8 Failed: 8)
  Failed tests:  1-8
  Non-zero exit status: 8
t\07_taint.t        (Wstat: 2304 Tests: 13 Failed: 9)
  Failed tests:  2, 6-13
  Non-zero exit status: 9
t\09_system.t       (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 24 tests but ran 0.
t\10_formatting.t   (Wstat: 1280 Tests: 5 Failed: 5)
  Failed tests:  1-5
  Non-zero exit status: 5
t\11_newlines.t     (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
t\12_systemx.t      (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
t\13_exports.t      (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 1 tests but ran 0.
t\14_uninitialised.t (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
t\args.t            (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 56 tests but ran 0.
t\internal.t        (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 3 tests but ran 0.
t\win32.t           (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
Files=17, Tests=28,  4 wallclock secs ( 0.08 usr +  0.08 sys =  0.16 CPU)
Result: FAIL
Failed 15/17 test programs. 24/28 subtests failed.
NMAKE : fatal error U1077: 'C:\opt\perl\5.30.1\bin\perl.exe' : return code '0x2'
Stop.
-> FAIL Installing IPC::System::Simple failed. See C:\Users\x\.cpanm\work\1584885524.8884\build.log for details. Retry with --force to force install it.
Expiring 1 work directories.
1 distribution installed

It seems to me the root cause is still "Can't locate Win32/Process.pm".

nanis commented 4 years ago
C:\Users\x> perl -E "say $^O"
MSWin32
jkeenan commented 4 years ago

On 3/22/20 10:05 AM, A. Sinan Unur wrote:

|C:\Users\x> cpanm IPC::System::Simple --> Working on IPC::System::Simple Fetching https://cpan.metacpan.org/authors/id/J/JK/JKEENAN/IPC-System-Simple-1.29.tar.gz ... OK Configuring IPC-System-Simple-1.29 ... OK ==> Found dependencies: Win32::ShellQuote --> Working on Win32::ShellQuote Fetching https://cpan.metacpan.org/authors/id/H/HA/HAARG/Win32-ShellQuote-0.003001.tar.gz ... OK Configuring Win32-ShellQuote-0.003001 ... OK Building and testing Win32-ShellQuote-0.003001 ... OK Successfully installed Win32-ShellQuote-0.003001 Building and testing IPC-System-Simple-1.29 ... FAIL ! Installing IPC::System::Simple failed. See C:\Users\x.cpanm\work\1584885524.8884\build.log for details. Retry with --force to force install it. 1 distribution installed |

And, here is the build log:

|cpanm (App::cpanminus) 1.7044 on perl 5.030001 built for MSWin32-x64-multi-thread Work directory is C:\Users\x/.cpanm/work/1584885524.8884 You have make "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.25.28610\bin\HostX64\x64\nmake.exe" You have LWP 6.43 Falling back to Archive::Tar 2.32 You have C:\opt\bin\unzip.exe Searching IPC::System::Simple on mirror https://cpan.metacpan.org ... Downloading index file https://cpan.metacpan.org/modules/02packages.details.txt.gz ... Uncompressing index file... --> Working on IPC::System::Simple Fetching https://cpan.metacpan.org/authors/id/J/JK/JKEENAN/IPC-System-Simple-1.29.tar.gz -> OK Unpacking IPC-System-Simple-1.29.tar.gz Entering IPC-System-Simple-1.29 Checking configure dependencies from META.json Checking if you have ExtUtils::MakeMaker 6.58 ... Yes (7.34) Configuring IPC-System-Simple-1.29 Running Makefile.PL Warning: prerequisite Win32::ShellQuote 0 not found. Checking if your kit is complete... Looks good Generating a nmake-style Makefile Writing Makefile for IPC::System::Simple Writing MYMETA.yml and MYMETA.json -> OK Checking dependencies from MYMETA.json ... Checking if you have re 0 ... Yes (0.37) Checking if you have ExtUtils::MakeMaker 0 ... Yes (7.34) Checking if you have warnings 0 ... Yes (1.44) Checking if you have Win32::ShellQuote 0 ... No Checking if you have Test::More 0 ... Yes (1.302162) Checking if you have Exporter 0 ... Yes (5.73) Checking if you have constant 0 ... Yes (1.33) Checking if you have Test 0 ... Yes (1.31) Checking if you have File::Basename 0 ... Yes (2.85) Checking if you have POSIX 0 ... Yes (1.88) Checking if you have Carp 0 ... Yes (1.50) Checking if you have strict 0 ... Yes (1.11) Checking if you have List::Util 0 ... Yes (1.50) Checking if you have Scalar::Util 0 ... Yes (1.50) ==> Found dependencies: Win32::ShellQuote Searching Win32::ShellQuote on mirror https://cpan.metacpan.org ... --> Working on Win32::ShellQuote Fetching https://cpan.metacpan.org/authors/id/H/HA/HAARG/Win32-ShellQuote-0.003001.tar.gz -> OK Unpacking Win32-ShellQuote-0.003001.tar.gz Entering Win32-ShellQuote-0.003001 Checking configure dependencies from META.json Configuring Win32-ShellQuote-0.003001 Running Makefile.PL Checking if your kit is complete... Looks good Generating a nmake-style Makefile Writing Makefile for Win32::ShellQuote Writing MYMETA.yml and MYMETA.json -> OK Checking dependencies from MYMETA.json ... Checking if you have File::Basename 0 ... Yes (2.85) Checking if you have Test::More 0.94 ... Yes (1.302162) Checking if you have File::Spec 0 ... Yes (3.78) Building and testing Win32-ShellQuote-0.003001 Microsoft (R) Program Maintenance Utility Version 14.25.28610.4 Copyright (C) Microsoft Corporation. All rights reserved. cp lib/Win32/ShellQuote.pm blib\lib\Win32\ShellQuote.pm Microsoft (R) Program Maintenance Utility Version 14.25.28610.4 Copyright (C) Microsoft Corporation. All rights reserved. "C:\opt\perl\5.30.1\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef Test::Harness::Switches; test_harness(0, 'blib\lib', 'blib\arch')" t*.t t\quote_system.t .. ok t\quoting.t ....... ok t\unescape_cmd.t .. ok t\unquoting.t ..... ok All tests successful. Files=4, Tests=227, 7 wallclock secs ( 0.05 usr + 0.05 sys = 0.09 CPU) Result: PASS Microsoft (R) Program Maintenance Utility Version 14.25.28610.4 Copyright (C) Microsoft Corporation. All rights reserved. Installing C:\opt\perl\site\5.30.1\lib\Win32\ShellQuote.pm Appending installation info to c:\opt\perl\5.30.1\lib/perllocal.pod -> OK Successfully installed Win32-ShellQuote-0.003001 Installing C:\opt\perl\site\5.30.1\lib\MSWin32-x64-multi-thread.meta\Win32-ShellQuote-0.003001\install.json Installing C:\opt\perl\site\5.30.1\lib\MSWin32-x64-multi-thread.meta\Win32-ShellQuote-0.003001\MYMETA.json Building and testing IPC-System-Simple-1.29 Microsoft (R) Program Maintenance Utility Version 14.25.28610.4 Copyright (C) Microsoft Corporation. All rights reserved. cp lib/IPC/System/Simple.pm blib\lib\IPC\System\Simple.pm Microsoft (R) Program Maintenance Utility Version 14.25.28610.4 Copyright (C) Microsoft Corporation. All rights reserved. "C:\opt\perl\5.30.1\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef Test::Harness::Switches; test_harness(0, 'blib\lib', 'blib\arch')" t*.t Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 7) line

  1. BEGIN failed--compilation aborted at (eval 7) line 2. BEGIN failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. Compilation failed in require at t\01_load.t line 5. BEGIN failed--compilation aborted at t\01_load.t line 5. t\01_load.t ........... Dubious, test returned 2 (wstat 512, 0x200) Failed 1/1 subtests Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line
  2. BEGIN failed--compilation aborted at (eval 13) line 2. BEGIN failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. Compilation failed in require at t\02_exit.t line 15. BEGIN failed--compilation aborted at t\02_exit.t line 15. t\02_exit.t ........... Dubious, test returned 2 (wstat 512, 0x200) Failed 28/28 subtests t\03_signal.t ......... skipped: Signals not implemented on Win32 # Failed test 'use IPC::System::Simple;' # at t\04_capture.t line
  3. Tried to use 'IPC::System::Simple'. # Error: Can't locate

    Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 15) line

  4. BEGIN failed--compilation aborted at (eval 15) line 2. # BEGIN

    failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. # Compilation failed in require at t\04_capture.t line 20. # BEGIN failed--compilation aborted at t\04_capture.t line 20. Undefined subroutine &main::capture called at t\04_capture.t line 25. # Looks like your test exited with 255 just after 1. t\04_capture.t ........ Dubious, test returned 255 (wstat 65280, 0xff00) Failed 12/12 subtests # Failed test 'use IPC::System::Simple;' # at t\05_multi_capture.t line 19. # Tried to use 'IPC::System::Simple'. # Error: Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 15) line

  5. BEGIN failed--compilation aborted at (eval 15) line 2. # BEGIN

    failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. # Compilation failed in require at t\05_multi_capture.t line

  6. BEGIN failed--compilation aborted at t\05_multi_capture.t line 19.

    Undefined subroutine &main::capture called at t\05_multi_capture.t line

  7. Looks like your test exited with 255 just after 1.

    t\05_multi_capture.t .. Dubious, test returned 255 (wstat 65280, 0xff00) Failed 14/14 subtests # Failed test 'use IPC::System::Simple;' # at t\06_fail.t line 6. # Tried to use 'IPC::System::Simple'. # Error: Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 15) line

  8. BEGIN failed--compilation aborted at (eval 15) line 2. # BEGIN

    failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. # Compilation failed in require at t\06_fail.t line 6. # BEGIN failed--compilation aborted at t\06_fail.t line 6. # Failed test 'Non-existent, run ' # at t\06_fail.t line 14. # 'Undefined subroutine &main::run called at t\06_fail.t line 13. # ' # doesn't match '(?^:failed to start)' # Failed test 'Empty call to run' # at t\06_fail.t line 19. # 'Undefined subroutine &main::run called at t\06_fail.t line 18. # ' # doesn't match '(?^:IPC::System::Simple::run called with no arguments)' # Failed test 'Empty call to capture' # at t\06_fail.t line 22. # 'Undefined subroutine &main::capture called at t\06_fail.t line 21. # ' # doesn't match '(?^:IPC::System::Simple::capture called with no arguments)' # Failed test 'No command passed to run' # at t\06_fail.t line 25. # 'Undefined subroutine &main::run called at t\06_fail.t line 24. # ' # doesn't match '(?^:IPC::System::Simple::run called with no command)' # Failed test 'No command passed to capture' # at t\06_fail.t line 28. # 'Undefined subroutine &main::capture called at t\06_fail.t line 27. # ' # doesn't match '(?^:IPC::System::Simple::capture called with no command)' # Failed test 'Not existent, capture' # at t\06_fail.t line 32. # 'Undefined subroutine &main::capture called at t\06_fail.t line 31. # '

    doesn't match '(?^:failed to start)' # Failed test 'Not existent,

    capture' # at t\06_fail.t line 36. # 'Undefined subroutine &main::capture called at t\06_fail.t line 35. # ' # doesn't match '(?^:failed to start)' # Looks like you failed 8 tests of 8. t\06_fail.t ........... Dubious, test returned 8 (wstat 2048, 0x800) Failed 8/8 subtests # Failed test 'use IPC::System::Simple;' # at t\07_taint.t line

  9. Tried to use 'IPC::System::Simple'. # Error: Can't locate

    Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib) at (eval 15) line 2.

    BEGIN failed--compilation aborted at (eval 15) line 2. # BEGIN

    failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. # Compilation failed in require at t\07_taint.t line 16. # BEGIN failed--compilation aborted at t\07_taint.t line 16. # Failed test 'Single-arg, tainted ENV' # at t\07_taint.t line 32. # 'Undefined subroutine &main::run called at t\07_taint.t line 31. # ' # doesn't match '(?^:called with tainted environment)' # Failed test 'Multi-arg, tainted ENV' # at t\07_taint.t line 35. # 'Undefined subroutine &main::run called at t\07_taint.t line 34. # ' # doesn't match '(?^:called with tainted environment)' # Failed test 'Single-arg, tainted data' # at t\07_taint.t line 41. # 'Undefined subroutine &main::run called at t\07_taint.t line 40. # ' # doesn't match '(?^:called with tainted argument)' # Failed test 'multi-arg, tainted data' # at t\07_taint.t line 44. # 'Undefined subroutine &main::run called at t\07_taint.t line 43. # ' # doesn't match '(?^:called with tainted argument)' # Failed test 'Single-arg, clean data and ENV' # at t\07_taint.t line 47. # got: 'Undefined subroutine &main::run called at t\07_taint.t line 46. # ' # expected: '' # Failed test 'Multi-arg, clean data and ENV' # at t\07_taint.t line 50. # got: 'Undefined subroutine &main::run called at t\07_taint.t line 49. # ' # expected: '' # Failed test 'Returns of multi-arg capture should be tainted' # at t\07_taint.t line 53. # Failed test 'Returns of single-arg capture should be tainted'

    at t\07_taint.t line 56. # Looks like you failed 9 tests of 13.

    t\07_taint.t .......... Dubious, test returned 9 (wstat 2304, 0x900) Failed 9/13 subtests t\08_core.t ........... skipped: BSD::Resource required for coredump tests Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line

  10. BEGIN failed--compilation aborted at (eval 13) line 2. BEGIN failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. Compilation failed in require at t\09_system.t line 15. BEGIN failed--compilation aborted at t\09_system.t line 15. t\09_system.t ......... Dubious, test returned 2 (wstat 512, 0x200) Failed 24/24 subtests # Failed test 'use IPC::System::Simple;' # at t\10_formatting.t line 5. # Tried to use 'IPC::System::Simple'. # Error: Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib) at (eval 15) line 2.

    BEGIN failed--compilation aborted at (eval 15) line 2. # BEGIN

    failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. # Compilation failed in require at t\10_formatting.t line 5. # BEGIN failed--compilation aborted at t\10_formatting.t line 5. # Failed test 'Taint pkg only once' # at t\10_formatting.t line 15. # 'Undefined subroutine &main::run called at t\10_formatting.t line 12. # ' # doesn't match '(?^:^IPC::System::Simple::run called with tainted argument)' # Failed test 'Taint env only once' # at t\10_formatting.t line 21. # 'Undefined subroutine &main::run called at t\10_formatting.t line 18. # ' # doesn't match '(?^:^IPC::System::Simple::run called with tainted environment)' # Failed test 'Package mentioned only once' # at t\10_formatting.t line 33. # 'Undefined subroutine &main::run called at t\10_formatting.t line 30. # ' # doesn't match '(?^:^IPC::System::Simple::run called with no arguments)' # Failed test 'Package mentioned only once' # at t\10_formatting.t line 39. # 'Undefined subroutine &main::run called at t\10_formatting.t line 36. # ' # doesn't match '(?^:^IPC::System::Simple::run called with no command)' # Looks like you failed 5 tests of 5. t\10_formatting.t ..... Dubious, test returned 5 (wstat 1280, 0x500) Failed 5/5 subtests Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 7) line

  11. BEGIN failed--compilation aborted at (eval 7) line 2. BEGIN failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. Compilation failed in require at t\11_newlines.t line 3. BEGIN failed--compilation aborted at t\11_newlines.t line 3. t\11_newlines.t ....... Dubious, test returned 2 (wstat 512, 0x200) No subtests run Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 7) line
  12. BEGIN failed--compilation aborted at (eval 7) line 2. BEGIN failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. Compilation failed in require at t\12_systemx.t line 4. BEGIN failed--compilation aborted at t\12_systemx.t line 4. t\12_systemx.t ........ Dubious, test returned 2 (wstat 512, 0x200) No subtests run Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line
  13. BEGIN failed--compilation aborted at (eval 13) line 2. BEGIN failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. Compilation failed in require at t\13_exports.t line 10. BEGIN failed--compilation aborted at t\13_exports.t line 10. t\13_exports.t ........ Dubious, test returned 2 (wstat 512, 0x200) Failed 1/1 subtests Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line
  14. BEGIN failed--compilation aborted at (eval 13) line 2. BEGIN failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. Compilation failed in require at t\14_uninitialised.t line 6. BEGIN failed--compilation aborted at t\14_uninitialised.t line 6. t\14_uninitialised.t .. Dubious, test returned 2 (wstat 512, 0x200) No subtests run Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line
  15. BEGIN failed--compilation aborted at (eval 13) line 2. BEGIN failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. Compilation failed in require at t\args.t line 6. BEGIN failed--compilation aborted at t\args.t line 6. t\args.t .............. Dubious, test returned 2 (wstat 512, 0x200) Failed 56/56 subtests Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line
  16. BEGIN failed--compilation aborted at (eval 13) line 2. BEGIN failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. Compilation failed in require at t\internal.t line 4. BEGIN failed--compilation aborted at t\internal.t line 4. t\internal.t .......... Dubious, test returned 2 (wstat 512, 0x200) Failed 3/3 subtests Can't locate Win32/Process.pm in @INC (you may need to install the Win32::Process module) (@INC contains: C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\arch C:/opt/perl/site/5.30.1/lib/MSWin32-x64-multi-thread C:/opt/perl/site/5.30.1/lib C:/opt/perl/5.30.1/lib .) at (eval 13) line
  17. BEGIN failed--compilation aborted at (eval 13) line 2. BEGIN failed--compilation aborted at C:\Users\x.cpanm\work\1584885524.8884\IPC-System-Simple-1.29\blib\lib/IPC/System/Simple.pm line 48. Compilation failed in require at t\win32.t line 5. BEGIN failed--compilation aborted at t\win32.t line 5. t\win32.t ............. Dubious, test returned 2 (wstat 512, 0x200) No subtests run Test Summary Report ------------------- t\01_load.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 1 tests but ran 0. t\02_exit.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 28 tests but ran 0. t\04_capture.t (Wstat: 65280 Tests: 1 Failed: 1) Failed test: 1 Non-zero exit status: 255 Parse errors: Bad plan. You planned 12 tests but ran 1. t\05_multi_capture.t (Wstat: 65280 Tests: 1 Failed: 1) Failed test: 1 Non-zero exit status: 255 Parse errors: Bad plan. You planned 14 tests but ran 1. t\06_fail.t (Wstat: 2048 Tests: 8 Failed: 8) Failed tests: 1-8 Non-zero exit status: 8 t\07_taint.t (Wstat: 2304 Tests: 13 Failed: 9) Failed tests: 2, 6-13 Non-zero exit status: 9 t\09_system.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 24 tests but ran 0. t\10_formatting.t (Wstat: 1280 Tests: 5 Failed: 5) Failed tests: 1-5 Non-zero exit status: 5 t\11_newlines.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: No plan found in TAP output t\12_systemx.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: No plan found in TAP output t\13_exports.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 1 tests but ran 0. t\14_uninitialised.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: No plan found in TAP output t\args.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 56 tests but ran 0. t\internal.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 3 tests but ran 0. t\win32.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: No plan found in TAP output Files=17, Tests=28, 4 wallclock secs ( 0.08 usr + 0.08 sys = 0.16 CPU) Result: FAIL Failed 15/17 test programs. 24/28 subtests failed. NMAKE : fatal error U1077: 'C:\opt\perl\5.30.1\bin\perl.exe' : return code '0x2' Stop. -> FAIL Installing IPC::System::Simple failed. See C:\Users\x.cpanm\work\1584885524.8884\build.log for details. Retry with --force to force install it. Expiring 1 work directories. 1 distribution installed |

It seems to me the root cause is still "/Can't locate Win32/Process.pm/".

Since I don't find the pattern m/strawberry/i anywhere in your output, can I assume that you are not using Strawberry Perl?

If so, is it possible that the reason why others have now gotten PASSes for version 1.28 or 1.29 is that they are using Strawberry Perl and they therefore already have Win32::Process installed?

If so, then I'll create a git branch (or p.r.) that explicitly requires Win32::Process and ask you to give it a spin. Let me know if that works for you.

Thank you very much. Jim Keenan

nanis commented 4 years ago

can I assume that you are not using Strawberry Perl?

Yes, I always build perl from source using MSVC.

If so, then I'll create a git branch (or p.r.) that explicitly requires Win32::Process

Sure, as I said in the original report, the problem is that "The distro does not specify Win32::Process as a dependency, and tests fail. "

nanis commented 4 years ago

Now, in the discussion linked above, I see a PR to change dist.ini that hasn't been merged. But, I also noticed a Makefile.PL in the distribution which has a place where the prerequisite can be in inserted: https://github.com/pjf/ipc-system-simple/blob/82d6b7a3a04638d7989d6c56c43d4ae9cde0c789/Makefile.PL#L85

I do not have a distzilla environment configured and I don't have much time to dive into the innards of the module. Just pointing out.

jkeenan commented 4 years ago

Now, in the discussion linked above, I see a PR to change dist.ini that hasn't been merged. But, I also noticed a Makefile.PL in the distribution which has a place where the prerequisite can be in inserted:

https://github.com/pjf/ipc-system-simple/blob/82d6b7a3a04638d7989d6c56c43d4ae9cde0c789/Makefile.PL#L85

I do not have a distzilla environment configured and I don't have much time to dive into the innards of the module. Just pointing out.

(I scrapped the Dist::Zilla build environment. It was getting in the way of my understanding the problems in this distribution.)

Can you try the following branch in the repository? https://github.com/pjf/ipc-system-simple/tree/ghi17-win32-missing

Thank you very much. Jim Keenan

nanis commented 4 years ago

I am glad I am not the only one who finds Dist::Zilla distracting. In any case, ghi17-win32-missing works, the dependency is correctly added:

C:\Users\x\AppData\Local\Temp\ipc-system-simple (ghi17-win32-missing) > cpanm --installdeps .
--> Working on .
Configuring C:/Users/x/AppData/Local/Temp/ipc-system-simple ... OK
==> Found dependencies: Win32::Process
--> Working on Win32::Process
Fetching https://cpan.metacpan.org/authors/id/J/JD/JDB/Win32-Process-0.16.tar.gz ... OK
Configuring Win32-Process-0.16 ... OK
Building and testing Win32-Process-0.16 ... OK
Successfully installed Win32-Process-0.16
<== Installed dependencies for .. Finishing.
1 distribution installed

Thank you!

jkeenan commented 4 years ago

Merged branch to master. Released version 1.30 to CPAN. Closing issue.

Thanks again. Jim Keenan