develooper Front page | perl.perl5.porters | Postings from December 2011

[perl #82912] upgrade broke XS modules

Thread Previous | Thread Next
James E Keenan via RT
December 3, 2011 11:42
[perl #82912] upgrade broke XS modules
Message ID:
On Thu Jan 27 06:51:00 2011, wrote:
> I upgraded from perl 5.12.1 to 5.12.3. I didn't use the default
>    compilation settings. After installation, "cpan" didn't work
>    anymore, failing to load DBI modules. After a short investigation
>    I've realised that the modified compilation options (going from a
>    non-threaded to threaded perl) broke all existing XS modules.

Going from non-threaded to threaded perl sounds like one of the more
drastic changes in configuration that one can make, even within a single
major version.  So this breakage does not seem surprising.

> I solved the problem by entirely removing the
>    /usr/local/lib/perl5/site_perl/5.12.1/ directory, because I had no
>    easy way to know which modules would work and which wouldn't.
> What would be great would be a quick check (for my $mod in (@modules)
>    { eval {  require $mod };  }) at installation (make install) to
>    warn of this problem and propose to move away the faulty modules.

Our configure-build-test cycle is already quite long.  I personally
would be reluctant to lengthen it further by testing things which are
outside the Perl core distribution itself.

Still, I could see the usefulness of this as an "aftermarket product,"
i.e., something available on CPAN that individual users could run as a
diagnostic after 'make test' completes.

>    Another non exclusive possibility would be at Configure to compare
>    the options used with those for the current perl installation and
>    warn of potential incompatibilities.

Again, an aftermarket product that compares the contents of
lib/ from various Perl installations might be useful, but not,
IMO, in the core distribution.

> Last, at least test script
>    (make test) could warn of the problem.

That would imply making it part of the core distribution which, as
previously stated, I personally would not want.

My two cents?  Other opinions?  Should this be kept open in RT?

Thank you very much.
Jim Keenan

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About