New release of Perl::Build

Perl::Build is a Perl Builder created by tokuhirom. You can build and install Perl by:

$ curl -L | perl - 5.26.2 /opt/perl-5.26/

Also, it is the backend of plenv-install:

$ git clone $(plenv root)/plugins/perl-build
$ plenv install 5.26.2

Recently I became its maintainer, and have released a new version to CPAN. The new version contains the following changes:


#66, #67, #73, #74, #75, thanks Grinnz, anttilinno, djzort, sjn.

Now Perl::Build uses to find available Perl versions and Perl tarball URLs. MetaCPAN indexer is quite fast. So, as soon as a new Perl is released, you should be able to install it by Perl::Build.

Use HTTP::Tinyish for https support

#72, thanks AnaTofuZ.

MetaCPAN API serves in https, so we need HTTP clients that have https capabilities. Perl::Build uses HTTP::Tiny, which supports https only if IO::Socket::SSL (and hence XS module Net::SSLeay) is available. On the other hand, because Perl::Build will be fatpacked, we cannot expect the XS module Net::SSLeay is available. So what can we do?

Tatsuhiko Miyagawa created HTTP::Tinyish, which can automatically select HTTP clients (between LWP, HTTP::Tiny, curl, wget) that supports https. Thus Perl::Build uses HTTP::Tinyish now.

Improve fatpacking process


Perl::Build is distributed as a fatpacked script. Fatpacking is awesome, but it is hard to maintain.

I develop a CPAN client cpm, where I also fatpack it in this way. It works well so far, so I adopted it to Perl::Build. I hope this makes Perl::Build more maintainable.

Try new Perl::Build!

If you use Perl::Build as a plenv plugin, then you can update it by:

$ cd $(plenv root)/plugins/perl-build
$ git pull origin master

(There is also plenv-update plugin; you may update Perl::Build through it)

I guess Perl 5.28.0 will be released in a few days. Let's install Perl 5.28.0 with new Perl::Build!

$ plenv install 5.28.0

Leave a comment

About Shoichi Kaji