Perl in msysgit : call for help

The port of Git on Win32, msysgit, has Perl bundled with it. This means that most Git users on Windows have a perl installed somewhere. This is an important opportunity to bring developer tools written in Perl to a larger audience. My own github-keygen tool is one of them.

Unfortunately, that perl has some quirks:

  • this is an old 5.8.8, with a huge patch
  • it is built on msys, which a quite uncommon environment for Win32 perl developers (from the Perl developer it more like Unix : forward slashes, PATH separator is ':'...)
  • some core modules are missing. I noticed in particular the whole Pod:: tree

I tried to work on the Perl upgrade, but this is a too tough task for me.

So please help to bring a modern Perl to the Windows world!


Somehow this feels like suggesting people should use the system perl, instead of using their own installation either through perlbrew or compiled by themselves.

But I assume this is mainly for writing hooks?

I do think it's a good move to upgrade the provided perl that comes with msysgit though.

Actually I've been meaning to talk about this. In working with Alien::Base, I had expected that Strawberry would come with MSYS, but it doesn't. It bundles its own make, but since it doesn't have a Bash interpreter you cannot run shell scripts, like configure. It would be exceedingly useful to have a Windows version of Perl which does come with MSYS (or alternatively an MSYS environment with a modern Perl).

To Joel@here

It's years since I ran Cygwin but can't you install Cygwin in parallel with Strawbs Perl and then run batch scripts? I have forgotten, sorry.

Whatever I did with Cygwin always seem awkward, so I guess the real question is (as per the last part of your post): What is missing from Strawbs to make it a workable replacement for MSYS?

Hint: The correct answer has to include 'less than everything...:-)'.

@Ron, the goal of Alien:: modules is to allow external libraries to be installed from a CPAN client while installing some dependent module. Alien::Base has two ways of doing this, download a pre-built binary (for your platform) if available, or build the library from source. The problem is that most libraries (that I'm interested in) use a bash script for configuration (autoconf). This means that to build from source, you need at least a bash interpreter and probably sed/awk/grep/etc. Yes this sounds like the answer is "everything" but the mingw people have already done this, its called MSYS.

Then again, my original target for windows was to use the prebuilt binaries, so I guess I can live with that, but I got SO CLOSE to making it all work!

Leave a comment

About Olivier Mengué (dolmen)

user-pic I blog about Perl.