develooper Front page | perl.par | Postings from June 2008

Re: PAR installation question....

From:
Sisyphus
Date:
June 29, 2008 21:57
Subject:
Re: PAR installation question....
Message ID:
EC0CEB2D27AD46B2BFDF06B82EDB8B43@desktop2

----- Original Message ----- 
From: "Packy Anderson" <packy@dardan.com>
.
.
>
> Um, well, any module that requires xs, for starters, since  ActiveState 
> doesn't ship with a C compiler.  You'd need to provide  your own, and, 
> since xs modules need to be compiled with the same  compiler used to 
> compile the perl binary, you'll need to provide MS  Visual C++.

Yes, this was *once* true, but no longer is :-)

You can use the MinGW compiler and either dmake or nmake to build XS modules 
on ActivePerl. In fact you can use the very same MinGW compiler and dmake 
that ships with Strawberry Perl. ActivePerl achieves this by making use of 
the technique that first appeared (afaik) in ExtUtils::FakeConfig - but it 
does so in a fully automated way that requires no action on the part of the 
user - save having the compiler/make combination of his choice in the path. 
(ActiveState's early attempts to achieve this did not quite get it right - 
but their latest builds are bug-free in this respect, afaik.)

There are some XS modules (certain aspects of Win32::GUITest come to mind) 
that you cannot build with MinGW, but can build with a Microsoft compiler. 
So - there are modules that will build on ActivePerl, but not on Strawberry 
Perl (since Strawberry does not yet support the use of Visual Studio). But 
anything that builds on Strawberry using MinGW, will also build on 
ActivePerl using MinGW.

> as a list of modules that ActiveState claims don't build under 
> ActiveState, I was able to cherry pick a few moderately useful modules:
>
> DateTime
> DBD::SQLite
> Image::ExifTool
> Perl::Critic
> Spoon
>

If these build under Strawberry using MinGW, they will build the same way 
under ActivePerl using MinGW - assuming the presence of pre-requisites. (It 
may simply be that they don't build under ActiveState's automated 
ppm-building procedure.)

IMHO, Strawberry's main "selling" point is that it ships with both the 
compiler and make utility. (You don't have to then hunt around and install 
them separately.)
Also, it provides some additional and useful C libraries such as expat, 
iconv, gmp, xml2 and zlib  - which aren't part of MinGW.

Cheers,
Rob 




nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About