Instaling polymake on macOS 10.14

Discussions on installation issues go here.
MattLarson
Posts: 14
Joined: 03 Jun 2018, 22:57

Instaling polymake on macOS 10.14

Postby MattLarson » 04 Nov 2019, 23:16

Hi,
I'm trying to compile polymake 3.5 from source on macOS 10.14.6. Configuring polymake seems to work:

Code: Select all

MacBook-Pro-2:polymake computing$ ./configure --without-jreality checking C++ compiler ... ok (g++ is Apple CLANG (roughly 6.0) from Xcode 10.0.1) checking C++ library ... ok (libc++ 7000, C++ 201402) checking for package manager ... no package manager specified determining architecture ... ok (darwin.x86_64) determining compiler flags ... ok CFLAGS= CXXFLAGS= -std=c++14 -Wno-logical-op-parentheses -Wno-shift-op-parentheses -Wno-mismatched-tags -Wno-unused-local-typedef -Wno-error=unneeded-internal-declaration -Wshadow LDFLAGS= checking gmp installation ... ok checking mpfr installation ... ok checking boost installation ... ok checking libxml2 installation ... ok checking perl module XML::Writer ... ok checking perl module XML::LibXML ... ok checking perl module XML::LibXSLT ... ok checking perl module Term::ReadKey ... ok checking perl module Term::ReadLine ... ok checking perl module JSON ... ok checking shared perl library ... Use of uninitialized value $thislib in substitution (s///) at /Users/computing/perl5/lib/perl5/ExtUtils/Liblist/Kid.pm line 72. Use of uninitialized value $thislib in pattern match (m//) at /Users/computing/perl5/lib/perl5/ExtUtils/Liblist/Kid.pm line 99. Use of uninitialized value $thislib in substitution (s///) at /Users/computing/perl5/lib/perl5/ExtUtils/Liblist/Kid.pm line 106. Use of uninitialized value $thislib in concatenation (.) or string at /Users/computing/perl5/lib/perl5/ExtUtils/Liblist/Kid.pm line 114. Unrecognized argument in LIBS ignored: '' ok Configuring bundled extensions: bundled extension jreality ... disabled by command-line bundled extension atint ... ok bundled extension bliss ... failed bundled extension cdd ... ok (bundled) bundled extension flint ... failed bundled extension java ... ok (JNI headers at /System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers) bundled extension javaview ... failed bundled extension libnormaliz ... ok (bundled [OpenMP support disabled]) bundled extension lrs ... ok (bundled) bundled extension nauty ... ok (bundled) bundled extension ppl ... failed bundled extension scip ... failed bundled extension singular ... failed bundled extension soplex ... failed bundled extension sympol ... ok (bundled) * If you want to change the configuration of bundled extensions please see build/bundled.log and try configure --help. * Configuration successful. * You can run 'ninja -C build/Opt install' now to build and install polymake.
But then when I try to compile something goes wrong at the end:

Code: Select all

ninja: Entering directory `build/Opt' [1/1] GENERATE /Users/computing/polymake/build/targets.ninja [519/519] GENERATE /Users/computing/polymake/build/targets.ninja [145/934] BUILD /Users/computing/polymake/build/Opt/jars/polymake_java.jar Unable to find a $JAVA_HOME at "/usr", continuing with system-provided Java... Note: Some input files use or override a deprecated API. Note: Recompile with -Xlint:deprecation for details. Note: Some input files use unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. [927/934] GENERATE /Users/computing/polymake/build/applib/fake.c /Library/Developer/CommandLineTools/usr/bin/nm: /Users/computing/polymake/build/Opt/lib/ideal.bundle The file was not recognized as a valid object file [934/934] INSTALL core system in mode Opt at /usr/local/share/polymake FAILED: install /usr/bin/perl /Users/computing/polymake/support/install.pl --root /Users/computing/polymake --buildroot /Users/computing/polymake/build --config /Users/computing/polymake/build/config.ninja --mode Opt --xs /Users/computing/polymake/build/Opt/perlx/5.18.4/darwin-thread-multi-2level/auto/Polymake/Ext/Ext.bundle --callable /Users/computing/polymake/build/Opt/perlx/5.18.4/darwin-thread-multi-2level/libpolymake.3.5.dylib /Users/computing/polymake/build/Opt/perlx/5.18.4/darwin-thread-multi-2level/libpolymake.dylib --fakelibs /Users/computing/polymake/build/Opt/lib/callable/libpolymake-apps-rt.3.5.dylib /Users/computing/polymake/build/Opt/lib/callable/libpolymake-apps-rt.dylib /Users/computing/polymake/build/Opt/lib/callable/libpolymake-apps.3.5.dylib /Users/computing/polymake/build/Opt/lib/callable/libpolymake-apps.dylib /Users/computing/polymake/support/install.pl: can't clean /usr/local/include/polymake: /usr/local/include/polymake/TransformedContainer.h: cannot unlink file: Permission denied /usr/local/include/polymake/TransformedContainer.h: cannot restore permissions to 0100444: Permission denied /usr/local/include/polymake/Main.h: cannot unlink file: Permission denied . . . ninja: build stopped: subcommand failed.
I've removed a very long error message that consists of "cannot unlink file: Permission denied" and "cannot restore permissions to 0100444: Permission denied" for many files.

I'm not sure what to make of this error. Any help would be greatly appreciated!

User avatar
gawrilow
Main Author
Posts: 423
Joined: 25 Dec 2010, 17:40

Re: Instaling polymake on macOS 10.14

Postby gawrilow » 04 Nov 2019, 23:57

Most probably, files under /usr/local do not belong your normal user account but root. `sudo ninja ... install` should help.

MattLarson
Posts: 14
Joined: 03 Jun 2018, 22:57

Re: Instaling polymake on macOS 10.14

Postby MattLarson » 05 Nov 2019, 18:56

Thank you for your help!

In case this helps anyone else, I think the issue was that for some reason the homebrew installation of ninja wasn't working properly. After I manually installed it, everything compiled without a problem.

User avatar
gawrilow
Main Author
Posts: 423
Joined: 25 Dec 2010, 17:40

Re: Instaling polymake on macOS 10.14

Postby gawrilow » 05 Nov 2019, 23:45

Maybe it was a coincidence of two issues. However installed, ninja can't on its own overrule the security mechanisms, you have to empower it with sudo.


Return to “Installing polymake”