> > This undefined reference is caused by a superfluous blank > > in /usr/lib/perl5/5.8/cygwin/Config_heavy.pl: > > > > ... > > static_ext=' Win32CORE' > > ^ > > ... > > > > Removing it results in a successful build, but "make test" > > fails in t/2-pp.t with > > > > The perl executable "" does not exist > > > > (this comes from ./contrib/automated_pp_test/automated_pp_test.pl, > > apparently because somehow $^X has become "".
OK, a little more debugging revealed the culprit: lines 53-56 from t/2-pp.t have if (defined &Win32::GetShortPathName) { $^X = lc(Win32::GetShortPathName($^X)); $startperl = lc(Win32::GetShortPathName($startperl)); } After that $^X is "". Apparently Win32::GetShortPathName exists on cygwin, but returns "" on "/usr/bin/perl" (which isn't a Windows pathname at all). So comment that out. Also note that the path to the directory you build PAR in shouldn't contain blanks, otherwise lots of tests will fail. With the above I'm down to one failing test: Failed Test Stat Wstat Total Fail Failed List of Failed ------------------------------------------------------------------------ ----- t/2-pp.t 1 256 34 1 2.94% 28 Failed 1/2 test scripts, 50.00% okay. 1/42 subtests failed, 97.62% okay. # Failed test (automated_pp_test.pl at line 8261) not ok 28 - pp_minus_v_tests Test 28_6 # [410]sub pp_minus_v_tests cannot chmod file hello.exe # Did pp -o hello.out -v hello.pl > o_v.txt produce hello.exe? And indeed, there's only hello.out and hello.pl. Cheers, Roderich