Please don't take this as a troll as I would like to hear how other Perl programmers deal with failed module compilation.

Despite my love of Perl as a language I've had to give-up on it recently because module compilation is so hit and miss. I have experienced failed compilations of many modules lately on both Mac OSX Panther and Fedora Core 1 (DBD::mysql, HTML::Mason, mod_perl and others) such that I've had to resort to learning PHP to get work done without the need for endless module compilation.

How I wish this was not the case as I consider PHP an inferior version of Perl. However, much as everyone lauds the virtues of Perl modules and CPAN I contend that this is Perl's weakest link. Module dependency is as bad as RPM on Linux. Installing HTML::Mason, for example, required compilation of about a dozen other modules so I didn't exactly hold much hope of getting a result after several other failed compilations. True to form HTML::Mason died on me with "Failed 23/23 test scripts, 0.00% okay. 92/92 subtests failed, 0.00% okay /usr/bin/make test -- NOT OK .." I frankly haven't the time or patience to trace through the voluminous error messages produced and try to work out exactly where everything went wrong.

If I can't get modules to install reliably then Perl itself is unreliable. Fine if you can make do with the core modules but once you take a trip to CPAN you're on your own. Hence I can't recommend Perl for client projects because the ISP's sysadmin isn't going to want to waste hours tracing failed compilations as I exeperienced.

This raises a broader issue of Perl's usability in that the more bits 'n pieces required to get a job done (Perl, mod_perl, HTML::Mason) the greateer the likelihood of something backfiring and the fewer the ISPs who are going to offer the complete package. Hence PHP's success in the web development sphere. Isn't it time we had a more inclusive core, particularly for web development?

Perl was my first server-side scripting language and still my favourite. I just wish I didn't have to deal with CPAN's shortcomings. What a waste.


In reply to Module compilation hell by Anonymous Monk

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.