Module compilation misery

From: Garry Heaton (none_at_none.com)
Date: 03/31/04


Date: Tue, 30 Mar 2004 23:14:24 +0100

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 greater
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.



Relevant Pages

  • DBI would not compile
    ... gcc version 3.3.2 ... Perl: 5.8.2 64-bit, with threads. ... DBI.xs:1280: error: (Each undeclared identifier is reported only once ... Compilation failed again: ...
    (perl.dbi.users)
  • RE: Segmentation Fault(Core dumped)
    ... But when I started testing my perl script, ... Compilation failed in require at ./test.pl line 13. ... > official business of Sender. ...
    (perl.dbi.users)
  • Re: Python vs. Lisp -- please explain
    ... let's call it an "interpreted language". ... compiled Perl and Python instructions typically aren't executed ... Bear in mind, though, that Java's just-in-time compilation ...
    (comp.lang.python)
  • Re: COBOL compiler
    ... All Perl is compiled. ... > level of overhead to compilation to native code. ... > require IIRC even the python runtime library to be present. ... it to create a byte-compiled .pyc file. ...
    (Debian-User)
  • Re: distributing perl applications
    ... And Perl doesn't ... > there is no pause at compilation. ... I think bytecode does that but I may ... elimination of the "ugly black window". ...
    (comp.lang.perl.misc)