Downgrading perl in MacOs

Discussions on installation issues go here.
ren
Posts: 38
Joined: 03 May 2011, 15:21

Downgrading perl in MacOs

Postby ren » 21 May 2019, 15:19

Ever since the latest MacOs update last Friday, I've had problems starting polymake (installed from the MacOs bundle) because perl was updated:

Code: Select all

mb029:~ yueren$ /Applications/polymake.app/Contents/MacOS/polymake.run ========================================================================== your perl version (5.18.4) does not match the perl version this app was built for (5.18.2) please download and install the version of polymake that corresponds to the version of your system perl You can find the version number by executing /usr/bin/perl --version in a terminal. If there is no version of the polymake app matching your perl version please contact us at http://forum.polymake.org ==========================================================================
Does anybody have any experience with downgrading perl on MacOs? I have tried using perlbrew, with which I can start a subshell in which perl-1.18.2 is the default but that doesn't seem to fix the issue:

Code: Select all

mb029:~ yueren$ perl --version This is perl 5, version 18, subversion 4 (v5.18.4) built for darwin-thread-multi-2level (with 2 registered patches, see perl -V for more detail) Copyright 1987-2013, Larry Wall Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit. Complete documentation for Perl, including FAQ lists, should be found on this system using "man perl" or "perldoc perl". If you have access to the Internet, point your browser at http://www.perl.org/, the Perl Home Page. mb029:~ yueren$ perlbrew switch perl-5.18.2 A sub-shell is launched with perl-5.18.2 as the activated perl. Run 'exit' to finish it. bash-3.2$ perl --version This is perl 5, version 18, subversion 2 (v5.18.2) built for darwin-2level (with 1 registered patch, see perl -V for more detail) Copyright 1987-2013, Larry Wall Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit. Complete documentation for Perl, including FAQ lists, should be found on this system using "man perl" or "perldoc perl". If you have access to the Internet, point your browser at http://www.perl.org/, the Perl Home Page. bash-3.2$ /Applications/polymake.app/Contents/MacOS/polymake.run ========================================================================== your perl version (5.18.4) does not match the perl version this app was built for (5.18.2) please download and install the version of polymake that corresponds to the version of your system perl You can find the version number by executing /usr/bin/perl --version in a terminal. If there is no version of the polymake app matching your perl version please contact us at http://forum.polymake.org ========================================================================== bash-3.2$ /Applications/polymake.app/Contents/MacOS/polymake.start Can't locate loadable object for module Polymake::Ext in @INC (@INC contains: /Applications/polymake.app/Contents/Resources/polymake/share/polymake/perllib /Applications/polymake.app/Contents/Resources/polymake/lib/polymake/perlx /Applications/polymake.app/Contents/Resources/perl5 /Applications/polymake.app/Contents/Resources/perl5/lib/perl5/darwin-thread-multi-2level /Applications/polymake.app/Contents/Resources/perl5/lib/perl5 /Applications/polymake.app/Contents/Resources/perl5/lib/perl5/darwin-thread-multi-2level/ /Applications/polymake.app/Contents/Resources/polymake/lib/polymake/lib/ /Applications/polymake.app/Contents/Resources/polymake/lib/polymake/perlx/ /Applications/polymake.app/Contents/Resources/polymake/share/polymake/perllib/ /Library/Perl/5.18/darwin-thread-multi-2level /Library/Perl/5.18 /Network/Library/Perl/5.18/darwin-thread-multi-2level /Network/Library/Perl/5.18 /Library/Perl/Updates/5.18.4 /System/Library/Perl/5.18/darwin-thread-multi-2level /System/Library/Perl/5.18 /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level /System/Library/Perl/Extras/5.18 .) at /Applications/polymake.app/Contents/Resources/polymake/share/polymake/perllib/Polymake/Namespaces.pm line 17. Compilation failed in require at /Applications/polymake.app/Contents/Resources/polymake/share/polymake/perllib/Polymake/Namespaces.pm line 17. BEGIN failed--compilation aborted at /Applications/polymake.app/Contents/Resources/polymake/share/polymake/perllib/Polymake/Namespaces.pm line 17. Compilation failed in require at /Applications/polymake.app/Contents/Resources/polymake/share/polymake/perllib/Polymake.pm line 27. BEGIN failed--compilation aborted at /Applications/polymake.app/Contents/Resources/polymake/share/polymake/perllib/Polymake.pm line 27. Compilation failed in require at /Applications/polymake.app/Contents/Resources/polymake/bin/polymake line 166. BEGIN failed--compilation aborted at /Applications/polymake.app/Contents/Resources/polymake/bin/polymake line 166.
Any thanks is much appreciated!

paffenholz
Developer
Posts: 211
Joined: 24 Dec 2010, 13:47

Re: Downgrading perl in MacOs

Postby paffenholz » 21 May 2019, 15:43

I was not aware of this perl update in 10.14.5 and I don't see it documented somewhere. Nice.

Until now 5.18.2 was the only system perl available on 10.11 to 10.14, so this was stable for around two years now. And considering that by now there is perl 5.28 available, going from 5.18.2 to 5.18.4 is a pretty impressive move.

Unless there is some option on MacOS to switch the system perl back to 5.18.2 there is not much you can do until I can provide a new precompiled bundle for 10.14 with perl 5.18.4. The bundle deliberately only accepts the system perl as we cannot handle various perl versions in one precompiled package and mismatching perl versions was the one major source of complaints when we just picked up perl from the path in the beginning. Bringing any other perl to the front in the path does not help, it will not be used.

For compiling a bundle I need a machine with 10.14 and perl 5.18.4 first. I will need some time for this. Until then your best option is to compile your own polymake, which is rather simple using homebrew/perlbrew. you seem to have those installed anyway.

ren
Posts: 38
Joined: 03 May 2011, 15:21

Re: Downgrading perl in MacOs

Postby ren » 21 May 2019, 16:07

Okay, I'll give compiling polymake a shot. Thanks for the very quick reply!

tmcm
Posts: 1
Joined: 22 Dec 2019, 22:09

Re: Downgrading perl in MacOs

Postby tmcm » 23 Dec 2019, 14:16

Hello,

I have the same problem with the lastest version of polymake for macos. How can this be resolved without having to compile from the source? Can anyhow provided a compiled with version that works with perl 5.18.4?

thanks,
Piierre

paffenholz
Developer
Posts: 211
Joined: 24 Dec 2010, 13:47

Re: Downgrading perl in MacOs

Postby paffenholz » 28 Dec 2019, 22:50

Unfortunately we will probably not be able to provide binaries for 10.14.5 soon, as I don't have access to a Mac or a virtual machine with this version of MacOS. I will try to provide binaries for 10.15 (Catalina) sometime in January for the (then) current release of polymake. Switching the perl version with a minor release of the OS was an unfortunate move of apple.

Until then you can try and compile polymake yourself. You can download from here. This needs some additional software, which can be obtained via homebrew. This page has a line mentioning homebrew in the section on Preparation and one in the section on Compiling polymake with all necessary bash commands.

Andreas


Return to “Installing polymake”