Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re: Packaging Perl Programs (is) Painful

by ikegami (Pope)
on Sep 03, 2010 at 21:40 UTC ( #858811=note: print w/ replies, xml ) Need Help??


in reply to Packaging Perl Programs (is) Painful

Installing modules is a pain. I vastly prefer Strawberry Perl, and I mostly use that nowadays.

I don't understand that. Unless you tell it otherwise, cpan Module will use dmake and mingw for both. Additionally, ActivePerl provides other options, so it should make things easier, not harder.

It then grinds away for half an hour, using 80% of my CPU the whole time. What the HELL is it doing?

Sounds like you installed Wx::Alien, which builds the wxWidgets library for Wx.

It took me much longer to build, although turning off the realtime antivirus made a huge difference.

The program can't start because wxbase28u_gcc_custom.dll is missing from your computer.

That's the main file of the wxWidget library. (IIRC, it uses one or two others too.) Off the top of my head, it's installed under Alien/Wx in the arch-specific branch of the library directory. Or is it in the share directory?


Comment on Re: Packaging Perl Programs (is) Painful
Select or Download Code
Re^2: Packaging Perl Programs (is) Painful
by Sue D. Nymme (Monk) on Sep 03, 2010 at 23:07 UTC
    I don't understand that. Unless you tell it otherwise, cpan Module will use dmake and mingw for both. Additionally, ActivePerl provides other options, so it should make things easier, not harder.

    That's how things are with Strawberry—just use CPAN and things Just Work. With ActiveState, unless they've changed things in the past two years, you need to have Visual C and nmake installed (which I don't), or anything XS-based fails miserably. AS does have ppm,but—at least the version I have (5.10)—it's horrible.

    Sounds like you installed Wx::Alien, which builds the wxWidgets library for Wx.

    Well, yes. It's mandatory for Wx now. Was pp trying to rebuild the entire Wx library from scratch?

    It took me much longer to build, although turning off the realtime antivirus made a huge difference.

    Now why on earth would that make a difference? That's the kind of thing that would never even occur to me.

    Off the top of my head, it's installed under Alien/Wx in the arch-specific branch of the library directory. Or is it in the share directory?

    See, isn't that the sort of thing that a packaging utility is supposed to figure out for itself? Cava had no problem figuring that out.

      ith ActiveState, unless they've changed things in the past two years, you need to have Visual C and nmake installed (which I don't),

      ActiveState has has dmake/MinGW longer than two years

      ppm install dmake MinGW ppm upgrade dmake MinGW
        The basic issue issue is that it is highly advantageous to link with MSVCRT.dll because that .dll is integral to Windows and will already be on every Windows system. The clib is very dependent upon this particular.dll (malloc,stdio, etc).

        AS uses VC6 and nmake for their builds because it links with MSVCRT.dll. If you were to build with say Visual Studio 2008, then that compiler will by default link with MSVCR90.dll a compiler specific library and not with MSVCRT.dll. And therefore you will have to distribute the compiler specific library with the compiled result.

        As it turns out mingw(gcc) will link with MSVCRT.dll. So for inquiring minds out there, that's why these 2 compilers are recommended.

        More info on AS site re: compilers and some 64 bit weirdness, one link: AS compilers for Perl modules.

        So far, I've never had to build a module for Windows as I've been able to find what I need on one of the .ppd repositories. I highly recommend NOT re-inventing the wheel. If a module is available as a .ppd, install it with ppm. Its also faster than "roll your own". Note that although not all of CPAN, there are 13K+ modules at AS's repository. That covers a lot of ground!

      That's how things are with Strawberry—just use CPAN and things Just Work.

      Same with ActiveState. Like I above, cpan Module. It'll install dmake and mingw if no compiler is found.

      With ActiveState, unless they've changed things in the past two years, you need to have Visual C and nmake installed (which I don't)

      You don't need this, but it's a free one-click install if you want to use it.

      AS does have ppm,but—at least the version I have (5.10)—it's horrible.

      I used ppm with 5.10 for a long time. It's great. I rarely had to leave it. Are you just using the AS repo, or did you check the others?

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://858811]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (14)
As of 2014-08-22 16:14 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (160 votes), past polls