Making the Switch to Strawberry Perl

So, I finally made the switch from ActivePerl to Strawberry Perl. Though I was aware of it, I had never looked at Strawberry Perl before because even though I had experienced some minor annoyances with ActiveState's Perl (and one major one, when they completely broke Tk a while back), it worked fine for me most of the time. In addition to ActiveState's Perl, I also use Perl under Cygwin.

The reason I use Windows is not because I'm a huge fan. I'd have an easier time with these types of issues on a different OS like Linux. I started out preferring Windows because I was an avid gamer, and I ended up developing a bunch of tools that I use routinely, so until I port them, I'm stuck for now. This story involves Windows 7, if you were curious.

Anyway, recently I wanted to use DBD::Pg to connect to a local PostgreSQL DB on my laptop and I started out trying to build it for Cygwin without success. No problem, I thought - I'll just use ActivePerl because its module is already going to be built for Windows and should easily work with a Windows app. I was right - it worked fine. Then I went to use Term::ReadLine for this same program and had a hell of a battle, though that module works perfectly under Cygwin.

After struggling for a while to get each module working under one Perl or another, consulting Google (and thus usually Stack Overflow) to see what other folks had done when encountering the same problems I was facing, I did notice a recurring suggestion. Several folks proposed a switch to Strawberry Perl. So, I thought I'd give it a spin.

BOOYAH! Both modules worked flawlessly with no extra effort on my part. I was sold! I moved all my ActivePerl programs over to Strawberry Perl and never looked back. Thanks for an awesome product guys!

As a side note, I finally found a good replacement for Windows' horrible console window, and that is ConEmu. The main thing I wanted from a console window is a window that will resize like any other window, and the default console window is weirdly rigid about its width. ConEmu has a lot of other neat features too, and it is free.


Changing the Perl distribution for me is like changing the OS because something works on the other one.
It will work for one thing, but you will miss out the other.
To re-use your "I'm not a Win fan but for gaming I will use it" pragma: switching to some Linux box will make compiling issue most likely go away, as compiling can be a pain on Windows.
Using Strawberry Perl is cool, because it has an active community at the moment.
However, you will not be able to easily compile your Perl application (if at all), or make some .NET library out of it (and all the other cool PDK stuff nobody knows about). That's one of the advantages of AS Perl. It's somewhat unfortunate, that both Perl distributions have their flaws :-(

Alex, you are referring to ActiveState's PerlApp tool which is great. However it can also work with any statically linked perl binary, so you can use it with your own custom compiled Strawberry Perl distribution.

One other tool you can use is Cava Packager with any distribution you use on Windows/MacOSX/Linux, however it may or not work with recent Perl versions.

Leave a comment

About tinypig

user-pic I blog about Perl.