Well spotted! Docs at https://docs.perl6.org/routine/shell may help
But this looks to me to be a known issue "quote bug in shell command on windows" https://rt.perl.org/Public/Bug/Display.html?id=131814 On 2 October 2017 at 09:06, Ville Koskinen <vil...@matrixscience.com> wrote: > Thanks, that helps. I wasn't sure where to file this bug, because this is > the first time I've used Rakudo. > > What looks odd to me is the line > > Can't find string terminator '"' anywhere before EOF at -e line 1. > > which is presumably the command > > shell('perl -e "use v5.18;"') > > on the line you linked to in zef's Build.pm. Is shell a Perl 6 built-in? I > can't find its definition in Rakudo's Windows build (documentation seems to > be in site/doc/Type/IO.pod). > > Indeed, if you try this line at the REPL prompt: > > PS C:\rakudo> .\bin\perl6 > To exit type 'exit' or '^D' >> shell('perl -e "use v5.18;"') > Can't find string terminator '"' anywhere before EOF at -e line 1. > Proc.new(in => IO::Pipe, out => IO::Pipe, err => IO::Pipe, exitcode => 255, > signal => 0, command => ["perl -e \"use v5.18;\""]) >> > > Problem isn't lack of Perl 5: > > PS C:\rakudo> perl -v > > This is perl 5, version 26, subversion 0 (v5.26.0) built for > MSWin32-x64-multi-thread > > > Regards, > Ville > > > On 01/10/2017 13:53, Steve Mynott via RT wrote: > > It seems a bit unfair ("shooting the messenger") blaming zef for > module install error messages and after all it does says "Perl 5 > version requirement not met" > > Looking at what triggers this error... > > https://github.com/niner/Inline-Perl5/blob/master/Build.pm#L6 > > suggests you need 5.18 or better and it doesn't look this is installed. > > Note also the docs > > https://github.com/niner/Inline-Perl5/blob/master/README.md > > (under BUILDING) says your Perl 5 needs to be built with particular > compile flags (-fPIC via -Duseshrplib). > > It's probably worth checking this is the case when you upgrade perl 5. > > If you have to rebuild perl5 from source you may (not sure) also have > to rebuild perl 6 from source in order to use the same C compiler with > both. > > This all *should* work on Windows (although I'd be unsurprised if > noone has tested it recently) but it's probably easier to practice the > steps on a common linux distro (under virtualbox or whatever) before > trying it on that platform. > > Cheers Steve > > On 29 September 2017 at 17:06, Ville Koskinen > <perl6-bugs-follo...@perl.org> wrote: > > # New Ticket Created by Ville Koskinen > # Please include the string: [perl #132183] > # in the subject line of all future correspondence about this issue. > # <URL: https://rt.perl.org/Ticket/Display.html?id=132183 > > > > I downloaded and installed the latest Windows x64 build of Rakudo > (http://rakudo.org/downloads/star/rakudo-star-latest-x86_64%20(JIT).msi). > My operating system is Windows Server 2016. > > When I try to install Inline::Perl5 with zef, the package installation > fails. But no matter how high I set verbosity, all I get is a cryptic > error message: > > C:\Users\villek>zef --debug install Inline::Perl5 > ===> Searching for: Inline::Perl5 > ===> Found: Inline::Perl5:ver('0.29'):auth('github:niner') [via > Zef::Repository::LocalCache] > ===> Dependencies: LibraryMake, File::Temp > ===> Filtering: Inline::Perl5:ver('0.29'):auth('github:niner') > ===> Filtering [OK] for Inline::Perl5:ver('0.29'):auth('github:niner') > ===> Building: Inline::Perl5:ver('0.29'):auth('github:niner') > Building with plugin: Zef::Service::Shell::Build+{<anon|123227344>} > Command: C:\rakudo\bin\perl6.bat -Ilib -I. -MBuild -e > ::('Build').new.build('C:\Users\villek\.zef\store\Inline-Perl5-0.29.tar.gz\Inline-Perl5-0.29'); > exit(0); > Can't find string terminator '"' anywhere before EOF at -e line 1. > > Perl 5 version requirement not met > > in method build at > C:\Users\villek\.zef\store\Inline-Perl5-0.29.tar.gz\Inline-Perl5-0.29\Build.pm > (Build) line 6 > in block <unit> at -e line 1 > > > ===> Building [FAIL]: Inline::Perl5:ver('0.29'):auth('github:niner') > Aborting due to build failure: > Inline::Perl5:ver('0.29'):auth('github:niner') (use --force-build to > override) > in code at > C:\rakudo\share\perl6\site\sources\3393EDA469A9E8925A633FF7A533AB41141495DA > (Zef::Client) line 329 > in method build at > C:\rakudo\share\perl6\site\sources\3393EDA469A9E8925A633FF7A533AB41141495DA > (Zef::Client) line 294 > in sub at > C:\rakudo\share\perl6\site\sources\3393EDA469A9E8925A633FF7A533AB41141495DA > (Zef::Client) line 520 > in method install at > C:\rakudo\share\perl6\site\sources\3393EDA469A9E8925A633FF7A533AB41141495DA > (Zef::Client) line 631 > in sub MAIN at > C:\rakudo\share\perl6\site\sources\ED3033E8712BCF9F6DE53678B14A54705DF211A6 > (Zef::CLI) line 152 > in block <unit> at > C:\rakudo\share\perl6\site\resources\DC5F87DA28311BE6F3A731229527E5C4A2F12716 > line 1 > in sub MAIN at C:\rakudo\share\perl6\site\bin\zef line 2 > in block <unit> at C:\rakudo\share\perl6\site\bin\zef line 2 > > This is in cmd.exe. In Powershell, the output is similar: > > PS C:\Users\villek> zef --debug install Inline::Perl5 > ===> Searching for: Inline::Perl5 > ===> Found: Inline::Perl5:ver('0.29'):auth('github:niner') [via > Zef::Repository::LocalCache] > ===> Dependencies: LibraryMake, File::Temp > ===> Filtering: Inline::Perl5:ver('0.29'):auth('github:niner') > ===> Filtering [OK] for Inline::Perl5:ver('0.29'):auth('github:niner') > ===> Building: Inline::Perl5:ver('0.29'):auth('github:niner') > Building with plugin: Zef::Service::Shell::Build+{<anon|123227344>} > Command: C:\rakudo\bin\perl6.bat -Ilib -I. -MBuild -e > ::('Build').new.build('C:\Users\villek\.zef\store\Inline-Perl5-0.29.tar.gz\Inline-Perl5-0.29'); > exit(0); > Can't find string terminator '"' anywhere before EOF at -e line 1. > > Perl 5 version requirement not met > > in method build at > C:\Users\villek\.zef\store\Inline-Perl5-0.29.tar.gz\Inline-Perl5-0.29\Build.pm > (Build) line 6 > in block <unit> at -e line 1 > > > ===> Building [FAIL]: Inline::Perl5:ver('0.29'):auth('github:niner') > Aborting due to build failure: > Inline::Perl5:ver('0.29'):auth('github:niner') (use --force-build to > override) > in code at > C:\rakudo\share\perl6\site\sources\3393EDA469A9E8925A633FF7A533AB41141495DA > (Zef::Client) line 329 > in method build at > C:\rakudo\share\perl6\site\sources\3393EDA469A9E8925A633FF7A533AB41141495DA > (Zef::Client) line 294 > in sub at > C:\rakudo\share\perl6\site\sources\3393EDA469A9E8925A633FF7A533AB41141495DA > (Zef::Client) line 520 > in method install at > C:\rakudo\share\perl6\site\sources\3393EDA469A9E8925A633FF7A533AB41141495DA > (Zef::Client) line 631 > in sub MAIN at > C:\rakudo\share\perl6\site\sources\ED3033E8712BCF9F6DE53678B14A54705DF211A6 > (Zef::CLI) line 152 > in block <unit> at > C:\rakudo\share\perl6\site\resources\DC5F87DA28311BE6F3A731229527E5C4A2F12716 > line 1 > in sub MAIN at C:\rakudo\share\perl6\site\bin\zef line 2 > in block <unit> at C:\rakudo\share\perl6\site\bin\zef line 2 > > Is this a bug in zef or in perl6.bat? > > Am I expected to read through the source code on the lines mentioned in > the stack trace? > > It would be much more useful to see some diagnostics about which > compiler the Build package is trying to use (if any!), whether it has > failed to find it and what it is actually trying to accomplish. > > Regards, > Ville Koskinen > > > > -- > Ville Koskinen > Matrix Science > 64 Baker Street > London W1U 7GB, UK > Tel: +44 (0)20 7486 1050 > Fax: +44 (0)20 7224 1344 > > vil...@matrixscience.com > http://www.matrixscience.com > > Matrix Science Ltd. is registered in England and Wales > Company number 3533898 -- 4096R/EA75174B Steve Mynott <steve.myn...@gmail.com>