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!


In reply to Re^4: Packaging Perl Programs (is) Painful by Marshall
in thread Packaging Perl Programs (is) Painful by Sue D. Nymme

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.