Switching to Perl 5.20 as the default Perl version
Joël Brogniart
Joel.Brogniart at laposte.net
Thu Jan 22 01:26:31 PST 2015
> Date: Mon, 19 Jan 2015 11:08:24 +0100
> From: Mojca Miklavec <mojca at macports.org>
> To: MacPorts Development <macports-dev at lists.macosforge.org>
> Subject: Switching to Perl 5.20 as the default Perl version
> Message-ID:
> <CALBOmsbWD1zOWbMPAu+8iTy2q+6kyQw-x=zNFoXv59ivahQ9Fg at mail.gmail.com>
> Content-Type: text/plain; charset=UTF-8
>
> Hi,
>
> I believe that we are ready to make the transition to 5.20 as the
> default version of Perl in MacPorts.
>
> There is a small number of ports that still lack support for 5.20. But
> that's about 1-2% of all ports only, and many of them are lacking
> support just because they are broken under 5.16 anyway, or because it
> would be nice to update the version first and that introduces extra
> dependencies and extra work etc. We can always just add 5.18/5.20 to
> the list of subports even for those semi-broken ports.
>
> See http://trac.macports.org/ticket/46005 for details.
>
> This is how we made the recent transition of switching ports from 5.12 to 5.16:
> http://trac.macports.org/ticket/44405
> which took about 5 months for all the maintainers (not) to respond.
>
> Thanks to a patch by Bradley (pixilla) it also became easy to add
> perl5_xy variants to ports in order to support multiple Perl versions,
> see details in the following ticket for example:
> http://trac.macports.org/ticket/46570
>
> Does anyone volunteer to start the transition to 5.20 and open a
> ticket similar to #44405 to switch from 5.16 to 5.20?
>
> Mojca
Hi,
Using informations from <http://trac.macports.org/ticket/46570> I tried to modify port x11/auto-multiple-choice to user perl variants. I added the lines:
PortGroup perl5 1.0
...
perl5.require_variant yes
perl5.conflict_variants yes
perl5.branches 5.16 5.18 5.20
perl5.create_variants ${perl5.branches}
and changed all "port:p5.16" to "port:p${perl5.major}"
All my tests where done after having "sudo port uninstall installed" before .
If I do
sudo port install auto-multiple-choice
auto-multiple-choice
All works fine, the application is built, installed and works.
If I do
sudo port install perl5
sudo port install auto-multiple-choice
auto-multiple-choice
All works fine too, the application is built, installed and works.
But if I do
sudo port install perl5 +perl5_20
sudo port install auto-multiple-choice
auto-multiple-choice
The application is built, installed but when launched I get the error:
Can't locate AMC/Basic.pm in @INC (you may need to install the AMC::Basic module) (@INC contains: /opt/local/lib/perl5/site_perl/5.20/darwin-thread-multi-2level /opt/local/lib/perl5/site_perl/5.20 /opt/local/lib/perl5/vendor_perl/5.20/darwin-thread-multi-2level /opt/local/lib/perl5/vendor_perl/5.20 /opt/local/lib/perl5/5.20/darwin-thread-multi-2level /opt/local/lib/perl5/5.20 .) at /opt/local/lib/AMC/perl/AMC-gui.pl line 45.
BEGIN failed--compilation aborted at /opt/local/lib/AMC/perl/AMC-gui.pl line 45.
I get the same error when I install perl5_18. All auto-multiple-choice files stays at the same places, whatever perl variant is installed. The unreachable file is in "/opt/local/lib/perl5/vendor_perl/AMC/Basic.pm". With the default perl5 install (perl5_16), it seems that @INC contains the path "/opt/local/lib/perl5/vendor_perl' but not with perl5_18 and perl5_20.
Are there other informations I should have added for the application to work with perl5_18 or perl5_20 variants?
Joël
More information about the macports-dev
mailing list