Page 1 of 1

Installing from source on macOS 10.13

Posted: 01 Jun 2019, 00:19
by AndrewPStaal
Hi,

I'm trying to install polymake on a mid-2012 MacBook Pro. Using homebrew/perlbrew. AFAIK, I've successfully gotten ninja and java installed, and dealt with dependencies. And I git cloned the directory https://github.com/polymake/polymake. However, I have an error at the configure stage. I wonder if anyone can help me resolve this? Seems to be a problem with boost, but I don't understand it. Error message below.

Thank you,
Andrew

APSMBP2:polymake andrew$ ./configure --without-fink LDFLAGS=' -stdlib=libstdc++' CXXFLAGS=-I/usr/include/c++/4.2.1
checking C++ compiler ... ok (g++ is Apple CLANG (roughly 6.0) from Xcode 10.0.0)
checking C++ library ... ok (GNU libstdc++ 20070719, C++ 201402)
checking for package manager ... no package manager specified
determining architecture ... ok (darwin.x86_64)
determining compiler flags ... ok
CFLAGS=
CXXFLAGS=-I/usr/include/c++/4.2.1 -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= -stdlib=libstdc++
checking gmp installation ... ok
checking mpfr installation ... ok
checking boost installation ... Could not compile a test program checking for boost library.
The most probable reasons are that the library is installed at a non-standard location,
or missing at all.
The complete error log follows:
clang: warning: libstdc++ is deprecated; move to libc++ [-Wdeprecated]
In file included from /var/folders/ln/y7rp83ds5j7gf_wsdtxpms000000gn/T//polymake_12497_configure.cc:1:
In file included from /usr/local/include/boost/shared_ptr.hpp:17:
/usr/local/include/boost/smart_ptr/shared_ptr.hpp:370:174: error: no member named 'move' in namespace 'std'
BOOST_CONSTEXPR shared_ptr( boost::detail::sp_internal_constructor_tag, element_type * px_, boost::detail::shared_count && pn_ ) BOOST_SP_NOEXCEPT : px( px_ ), pn( std::move( pn_ ) )
~~~~~^
/usr/local/include/boost/smart_ptr/shared_ptr.hpp:927:32: error: no member named 'move' in namespace 'std'
return shared_ptr<T>( std::move(r), p );
~~~~~^
/usr/local/include/boost/smart_ptr/shared_ptr.hpp:937:32: error: no member named 'move' in namespace 'std'
return shared_ptr<T>( std::move(r), p );
~~~~~^
/usr/local/include/boost/smart_ptr/shared_ptr.hpp:947:35: error: no member named 'move' in namespace 'std'
return p? shared_ptr<T>( std::move(r), p ): shared_ptr<T>();
~~~~~^
/usr/local/include/boost/smart_ptr/shared_ptr.hpp:957:32: error: no member named 'move' in namespace 'std'
return shared_ptr<T>( std::move(r), p );
~~~~~^
In file included from /var/folders/ln/y7rp83ds5j7gf_wsdtxpms000000gn/T//polymake_12497_configure.cc:1:
In file included from /usr/local/include/boost/shared_ptr.hpp:17:
In file included from /usr/local/include/boost/smart_ptr/shared_ptr.hpp:1158:
In file included from /usr/local/include/boost/smart_ptr/detail/local_sp_deleter.hpp:20:
/usr/local/include/boost/smart_ptr/detail/local_counted_base.hpp:110:66: error: no member named 'move' in namespace 'std'
explicit local_counted_impl( shared_count && pn ): pn_( std::move(pn) )
~~~~~^
In file included from /var/folders/ln/y7rp83ds5j7gf_wsdtxpms000000gn/T//polymake_12497_configure.cc:1:
In file included from /usr/local/include/boost/shared_ptr.hpp:17:
In file included from /usr/local/include/boost/smart_ptr/shared_ptr.hpp:1158:
/usr/local/include/boost/smart_ptr/detail/local_sp_deleter.hpp:47:68: error: no member named 'move' in namespace 'std'
explicit local_sp_deleter( D&& d ) BOOST_SP_NOEXCEPT: d_( std::move(d) )
~~~~~^
7 errors generated.


Please install the library and specify its location using --with-boost option, if needed.

Re: Installing from source on macOS 10.13

Posted: 01 Jun 2019, 10:58
by paffenholz
Seems we tested but did not properly update the instructions. Can you try the configure without any of the options you used, so just

Code: Select all

./configure
Andreas

Re: Installing from source on macOS 10.13

Posted: 01 Jun 2019, 13:25
by AndrewPStaal
Hi,

okay, I tried with only ./configure. Here is the output:
APSMBP2:polymake andrew$ ./configure
checking C++ compiler ... ok (g++ is Apple CLANG (roughly 6.0) from Xcode 10.0.0)
checking C++ library ... ok (libc++ 6000, 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 ... failed
WARNING: perl module JSON required for polymake not found on your machine.
Please be sure to install it prior to starting to use polymake.
If you have installed them in a non-standard location
please add the path to the environment variable PERL5LIB.
checking shared perl library ... Use of uninitialized value $thislib in substitution (s///) at /Users/andrew/perl5/lib/perl5/ExtUtils/Liblist/Kid.pm line 72.
Use of uninitialized value $thislib in pattern match (m//) at /Users/andrew/perl5/lib/perl5/ExtUtils/Liblist/Kid.pm line 99.
Use of uninitialized value $thislib in substitution (s///) at /Users/andrew/perl5/lib/perl5/ExtUtils/Liblist/Kid.pm line 106.
Use of uninitialized value $thislib in concatenation (.) or string at /Users/andrew/perl5/lib/perl5/ExtUtils/Liblist/Kid.pm line 114.
Unrecognized argument in LIBS ignored: ''
ok

Configuring bundled extensions:
bundled extension atint ... ok
bundled extension bliss ... failed
bundled extension cdd ... ok (bundled)
bundled extension java ... ok (JNI headers at /System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers)
bundled extension javaview ... failed
bundled extension jreality ... ok (with bundled JOGL)
bundled extension libnormaliz ... ok (bundled [OpenMP support disabled])
bundled extension lrs ... ok (bundled)
bundled extension nauty ... ok (bundled)
bundled extension ppl ... ok (1.2.0 @ /usr/local)
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.
WARNING: Please install/check the following perl modules prior to starting polymake:
JSON
I just installed JSON with

Code: Select all

brew install cpanm
and

Code: Select all

cpanm install JSON
and re-ran ./configure. This gets rid of the warning message, but not the messages about the perl library. Not sure if these are important, same with the configuring bundle extensions failures.

Re: Installing from source on macOS 10.13

Posted: 01 Jun 2019, 17:13
by gawrilow
I guess, you can ignore the warnings for now. They come from some third-party package pulled in as an indirect dependency. If you get polymake built and running, then they don't matter.

Regarding bundled extensions: these are just interfaces to independent software packages you have to install separately, if you need them in the first place. If the names do not ring a bell for you, just ignore. If you need some of them, first install the software then reconfigure polymake.

Re: Installing from source on macOS 10.13

Posted: 01 Jun 2019, 18:49
by AndrewPStaal
Great, thanks to both of you for your help! It seems to be running, so I'll have a go at the introduction now.

Cheers,
Andrew