1

I can't install IPC::Run on Windows 10 x64:

cpan> install IPC::Run
Running install for module 'IPC::Run'
Fetching with LWP:
http://ppm.activestate.com/CPAN/authors/id/T/TO/TODDR/CHECKSUMS
Checksum for E:\Perl\cpan\sources\authors\id\T\TO\TODDR\IPC-Run-0.94.tar.gz ok
IPC-Run-0.94/
IPC-Run-0.94/abuse/
IPC-Run-0.94/Changes
IPC-Run-0.94/eg/
IPC-Run-0.94/lib/
IPC-Run-0.94/LICENSE
IPC-Run-0.94/Makefile.PL
IPC-Run-0.94/MANIFEST
IPC-Run-0.94/META.json
IPC-Run-0.94/META.yml
IPC-Run-0.94/README
IPC-Run-0.94/t/
IPC-Run-0.94/TODO
IPC-Run-0.94/t/97_meta.t
IPC-Run-0.94/t/98_pod.t
IPC-Run-0.94/t/98_pod_coverage.t
IPC-Run-0.94/t/99_perl_minimum_version.t
IPC-Run-0.94/t/adopt.t
IPC-Run-0.94/t/binmode.t
IPC-Run-0.94/t/bogus.t
IPC-Run-0.94/t/filter.t
IPC-Run-0.94/t/harness.t
IPC-Run-0.94/t/io.t
IPC-Run-0.94/t/kill_kill.t
IPC-Run-0.94/t/lib/
IPC-Run-0.94/t/parallel.t
IPC-Run-0.94/t/pty.t
IPC-Run-0.94/t/pump.t
IPC-Run-0.94/t/run.t
IPC-Run-0.94/t/signal.t
IPC-Run-0.94/t/timeout.t
IPC-Run-0.94/t/timer.t
IPC-Run-0.94/t/win32_compile.t
IPC-Run-0.94/t/windows_search_path.t
IPC-Run-0.94/t/lib/Test.pm
IPC-Run-0.94/lib/IPC/
IPC-Run-0.94/lib/IPC/Run/
IPC-Run-0.94/lib/IPC/Run.pm
IPC-Run-0.94/lib/IPC/Run/Debug.pm
IPC-Run-0.94/lib/IPC/Run/IO.pm
IPC-Run-0.94/lib/IPC/Run/Timer.pm
IPC-Run-0.94/lib/IPC/Run/Win32Helper.pm
IPC-Run-0.94/lib/IPC/Run/Win32IO.pm
IPC-Run-0.94/lib/IPC/Run/Win32Pump.pm
IPC-Run-0.94/eg/factorial
IPC-Run-0.94/eg/factorial_pipe
IPC-Run-0.94/eg/factorial_scalar
IPC-Run-0.94/eg/run_daemon
IPC-Run-0.94/eg/runsh
IPC-Run-0.94/eg/runsu
IPC-Run-0.94/eg/synopsis_scripting
IPC-Run-0.94/abuse/blocking_debug_with_sub_coprocess
IPC-Run-0.94/abuse/blocking_writes
IPC-Run-0.94/abuse/broken_pipe_on_bad_executable_name
IPC-Run-0.94/abuse/timers
Configuring T/TO/TODDR/IPC-Run-0.94.tar.gz with Makefile.PL
Checking if your kit is complete...
Looks good
Generating a dmake-style Makefile
Writing Makefile for IPC::Run
Writing MYMETA.yml and MYMETA.json
  TODDR/IPC-Run-0.94.tar.gz
  E:\Perl\bin\perl.exe Makefile.PL INSTALLDIRS=site -- OK
Running make for T/TO/TODDR/IPC-Run-0.94.tar.gz
cp lib/IPC/Run/Win32IO.pm blib\lib\IPC\Run\Win32IO.pm
cp lib/IPC/Run/Win32Helper.pm blib\lib\IPC\Run\Win32Helper.pm
cp lib/IPC/Run/Debug.pm blib\lib\IPC\Run\Debug.pm
cp lib/IPC/Run/Win32Pump.pm blib\lib\IPC\Run\Win32Pump.pm
cp lib/IPC/Run.pm blib\lib\IPC\Run.pm
cp lib/IPC/Run/IO.pm blib\lib\IPC\Run\IO.pm
cp lib/IPC/Run/Timer.pm blib\lib\IPC\Run\Timer.pm
  TODDR/IPC-Run-0.94.tar.gz
  E:\BIOINF~1\perl\site\bin\dmake.exe -- OK
Running make test
E:\Perl\bin\perl.exe "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib\lib', 'blib\arch')" t/*.t
t/97_meta.t .................. skipped: Author tests not required for installation
t/98_pod.t ................... skipped: Author tests not required for installation
t/98_pod_coverage.t .......... skipped: Author tests not required for installation
t/99_perl_minimum_version.t .. skipped: Author tests not required for installation
t/adopt.t .................... skipped: adopt not implemented yet
t/binmode.t .................. ok
t/bogus.t .................... ok
t/filter.t ................... ok
t/harness.t .................. ok
t/io.t ....................... ok
t/kill_kill.t ................ skipped: Temporarily ignoring test failure on Win32
t/parallel.t ................. skipped: Parallel tests are dangerous on MSWin32
t/pty.t ...................... skipped: IO::Pty not installed
t/pump.t ..................... ok
t/run.t ...................... ok
t/signal.t ................... skipped: Skipping on Win32
t/timeout.t .................. 9/26 Terminating on signal SIGBREAK(21)
Terminating on signal SIGBREAK(21)
Terminating on signal SIGBREAK(21)
Terminating on signal SIGBREAK(21)
Terminating on signal SIGBREAK(21)
Terminating on signal SIGBREAK(21)

Then it presents me with a prompt...

Terminate batch job (Y/N)? N

...after which it (obviously) terminates. It looks like I had pressed Ctrl-Break several times during the installation but I didn't. The behaviour is repeatable. Does anyone have an idea of what's going on?

zb226
  • 9,586
  • 6
  • 49
  • 79
c11cc
  • 35
  • 4

1 Answers1

3

This is a bug, and there is an outstanding ticket for it

I suggest that you just force the installation with

cpan> force install IPC::Run

which will cause it to run the tests but ignore the result and go ahead and complete the installation anyway

Alternatively, you can run the installation manually as described in perlmodinstall, but skipping the test phase

cpan> look IPC::Run
C:\strawberry\cpan\build\IPC-Run-0.94-0>perl Makefile.PL
C:\strawberry\cpan\build\IPC-Run-0.94-0>dmake
C:\strawberry\cpan\build\IPC-Run-0.94-0>dmake install

This is assuming you are running Strawberry Perl. You may have to use a different make tool for ActivePerl

Borodin
  • 126,100
  • 9
  • 70
  • 144
  • Yeah, I noticed that bug report as well. But I still can't install it with 'force install'. It showed the same thing. – c11cc Dec 02 '16 at 07:23
  • Thanks a lot. I am using ActivePerl and it worked. I have tried to install manually before, but I didn't miss `dmake test` at that time. I am pretty new to these, so I am wondering that is `dmake test` necessary in the process? – c11cc Dec 02 '16 at 08:06
  • @c11cc: It's not a necessary part of getting the module installed, but it's foolish just to put a module onto your system without running its tests so that you can be sure that it's going to work. In this case you have run the tests several times anyway, and the test that's failing, `timeout.t`, is in the last three tests of the suite, so the module has passed most of the tests anyway. `force install` would do effectively the same thing, but in this case the test was fatal to the whole installation process, so the final `install` step was never reached. – Borodin Dec 02 '16 at 08:15
  • To skip the tests within the CPAN shell it's possible to run `notest install IPC::Run`. – Slaven Rezic Aug 25 '22 at 14:27