in reply to RFC: (Do Not) Modify the System Perl

When using the system Perl, you cannot upgrade modules via CPAN. If you do that, a system update may revert (parts of) the module chain back to older, vendor-supplied versions. This usually happens on OSX, where some XS module gets upgraded by the user and then Apple distributes their own, patched old version XS library again, overwriting the XS file but leaving the Perl file upgraded.

  • Comment on Re: RFC: (Do Not) Modify the System Perl

Replies are listed 'Best First'.
Re^2: RFC: (Do Not) Modify the System Perl
by shmem (Chancellor) on Oct 17, 2015 at 19:24 UTC
    When using the system Perl, you cannot upgrade modules via CPAN.

    This is a reason for not using CPAN to upgrade modules within the system perl installation - not a reason for not using the system perl at all. Each (reasonable) OS provides its own packager, and each packager has means to install modules elsewhere, apart from the system's locations.
    For some reason, there is:

    • archlib
    • vendorlib
    • sitelib

    and so on. Then PERL5LIB, lib.pm, FindBin.pm et al.

    perl -le'print map{pack c,($-++?1:13)+ord}split//,ESEL'