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



-- 
4096R/EA75174B Steve Mynott <steve.myn...@gmail.com>

Reply via email to