Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#20892 closed enhancement (fixed)

package polymake 3.0

Reported by: vdelecroix Owned by:
Priority: major Milestone: sage-7.3
Component: packages: experimental Keywords:
Cc: dimpase, mkoeppe, chapoton, ​stumpc5, moritz, tscrim Merged in:
Authors: Vincent Delecroix, Matthias Koeppe Reviewers: Matthias Koeppe, Vincent Delecroix, Karl-Dieter Crisman
Report Upstream: N/A Work issues:
Branch: 7b096fd (Commits) Commit:
Dependencies: #20894,#20886,#20901 Stopgaps:

Description (last modified by mkoeppe)

Package now compiles out of the box! There will be a next ticket for its interface within Sage.

upstream tarball: https://polymake.org/lib/exe/fetch.php/download/polymake-3.0r2-minimal.tar.bz2

Once installed you should be able to run polymake with

$ sage -sh -c polymake
Welcome to polymake version 3.0
Copyright (c) 1997-2015
...
polytope > 

previous attempts (with earlier versions): #13768, #14116

upstream discussion at:

Follow-up tickets:

  • #20901: Upgrade bliss package to 0.73 with Debian patches; install header files in location expected by polymake
  • #20977: Add Sage packages for additional software used by Polymake
  • #20907: Polymake extensions
  • #21170: pypolymake

Change History (106)

comment:1 Changed 3 years ago by vdelecroix

  • Description modified (diff)

comment:2 Changed 3 years ago by vdelecroix

  • Branch set to u/vdelecroix/20892
  • Cc chapoton added
  • Commit set to 9253643b19312dc5be0db6133f526bad99b902a8
  • Status changed from new to needs_review

New commits:

9253643Trac 20892: package for polymake 3.0

comment:3 Changed 3 years ago by git

  • Commit changed from 9253643b19312dc5be0db6133f526bad99b902a8 to cf20c0bc56e475f36012d8a8fef06f7a44f8f6a5

Branch pushed to git repo; I updated commit sha1. New commits:

cf20c0btrac 20892: more options to ./configure

comment:4 Changed 3 years ago by vdelecroix

  • Description modified (diff)

comment:5 Changed 3 years ago by vdelecroix

  • Description modified (diff)

comment:6 Changed 3 years ago by mkoeppe

Installation fails on Mac OS X:

[polymake-3.0r1] Found local metadata for polymake-3.0r1
[polymake-3.0r1] Using cached file /Users/mkoeppe/cvs/sage/upstream/polymake-3.0r1.tar.bz2
[polymake-3.0r1] polymake-3.0r1
[polymake-3.0r1] ====================================================
[polymake-3.0r1] Setting up build directory for polymake-3.0r1
[polymake-3.0r1] Finished extraction
[polymake-3.0r1] ****************************************************
[polymake-3.0r1] Host system:
[polymake-3.0r1] Darwin egret.local 15.5.0 Darwin Kernel Version 15.5.0: Tue Apr 19 18:36:36 PDT 2016; root:xnu-3248.50.21~8/RELEASE_X86_64 x86_64
[polymake-3.0r1] ****************************************************
[polymake-3.0r1] C compiler: gcc
[polymake-3.0r1] C compiler version:
[polymake-3.0r1] Using built-in specs.
[polymake-3.0r1] COLLECT_GCC=/Users/mkoeppe/cvs/sage/local/bin/gcc
[polymake-3.0r1] COLLECT_LTO_WRAPPER=/Users/mkoeppe/cvs/sage/local/libexec/gcc/x86_64-apple-darwin15.2.0/4.9.2/lto-wrapper
[polymake-3.0r1] Target: x86_64-apple-darwin15.2.0
[polymake-3.0r1] Configured with: ../src/configure --prefix=/Users/mkoeppe/cvs/sage/local --with-local-prefix=/Users/mkoeppe/cvs/sage/local --with-gmp=/Users/mkoeppe/cvs/sage/local --with-mpfr=/Users/mkoeppe/cvs/sage/local --with-mpc=/Users/mkoeppe/cvs/sage/local --with-system-zlib --disable-multilib --disable-nls --enable-languages=c,c++,fortran --disable-libitm --with-build-config=bootstrap-debug --without-isl --without-cloog  
[polymake-3.0r1] Thread model: posix
[polymake-3.0r1] gcc version 4.9.2 (GCC) 
[polymake-3.0r1] ****************************************************
[polymake-3.0r1] checking C++ compiler ... ok (g++ is GCC 4.9.2)
[polymake-3.0r1] checking C++ library ... ok (GNU stdlibc++ 20141030, C++ 199711)
[polymake-3.0r1] checking fink installation ... ok (/sw)
[polymake-3.0r1] checking fink gmp installation ... ok
[polymake-3.0r1] checking fink mpfr installation ... ok
[polymake-3.0r1] determining compiler flags ... ok
[polymake-3.0r1]    CFLAGS= -Wall ${ARCHFLAGS}
[polymake-3.0r1]    CXXFLAGS= -ftemplate-depth-200 -Wall -Wno-strict-aliasing -Wno-parentheses -fwrapv -fopenmp ${ARCHFLAGS}
[polymake-3.0r1] checking gmp installation ... ok (/sw)
[polymake-3.0r1] checking mpfr installation ... ok
[polymake-3.0r1] checking shared perl library ... failed
[polymake-3.0r1] 
[polymake-3.0r1] Could not compile a test program for the libperl.bundle shared library.
[polymake-3.0r1] The build error is as follows:
[polymake-3.0r1] /var/folders/38/wnh4gf1552g_crsjnv2vmmww0000gn/T//polymake_54759_configure.cc: In function 'int main(int, char**, char**)':
[polymake-3.0r1] /var/folders/38/wnh4gf1552g_crsjnv2vmmww0000gn/T//polymake_54759_configure.cc:8:40: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]
[polymake-3.0r1]     char *embedding[] = { "", "-e", "0" };
[polymake-3.0r1]                                         ^
[polymake-3.0r1] /var/folders/38/wnh4gf1552g_crsjnv2vmmww0000gn/T//polymake_54759_configure.cc:8:40: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]
[polymake-3.0r1] /var/folders/38/wnh4gf1552g_crsjnv2vmmww0000gn/T//polymake_54759_configure.cc:8:40: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]
[polymake-3.0r1] <stdin>:18:8: error: register %rbp is only available in 64-bit mode
[polymake-3.0r1]         pushq   %rbp
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:20:7: error: register %rsp is only available in 64-bit mode
[polymake-3.0r1]         movq    %rsp, %rbp
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:22:12: error: register %rsp is only available in 64-bit mode
[polymake-3.0r1]         subq    $64, %rsp
[polymake-3.0r1]                      ^~~~
[polymake-3.0r1] <stdin>:23:17: error: register %rbp is only available in 64-bit mode
[polymake-3.0r1]         movl    %edi, -36(%rbp)
[polymake-3.0r1]                           ^~~~
[polymake-3.0r1] <stdin>:24:7: error: register %rsi is only available in 64-bit mode
[polymake-3.0r1]         movq    %rsi, -48(%rbp)
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:25:7: error: register %rdx is only available in 64-bit mode
[polymake-3.0r1]         movq    %rdx, -56(%rbp)
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:28:11: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         leaq    LC0(%rip), %rax
[polymake-3.0r1]                     ^~~~
[polymake-3.0r1] <stdin>:29:7: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movq    %rax, -32(%rbp)
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:30:11: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         leaq    LC1(%rip), %rax
[polymake-3.0r1]                     ^~~~
[polymake-3.0r1] <stdin>:31:7: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movq    %rax, -24(%rbp)
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:32:11: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         leaq    LC2(%rip), %rax
[polymake-3.0r1]                     ^~~~
[polymake-3.0r1] <stdin>:33:7: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movq    %rax, -16(%rbp)
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:35:11: error: register %rbp is only available in 64-bit mode
[polymake-3.0r1]         leaq    -56(%rbp), %rdx
[polymake-3.0r1]                     ^~~~
[polymake-3.0r1] <stdin>:36:11: error: register %rbp is only available in 64-bit mode
[polymake-3.0r1]         leaq    -48(%rbp), %rcx
[polymake-3.0r1]                     ^~~~
[polymake-3.0r1] <stdin>:37:11: error: register %rbp is only available in 64-bit mode
[polymake-3.0r1]         leaq    -36(%rbp), %rax
[polymake-3.0r1]                     ^~~~
[polymake-3.0r1] <stdin>:38:7: error: register %rcx is only available in 64-bit mode
[polymake-3.0r1]         movq    %rcx, %rsi
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:39:7: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movq    %rax, %rdi
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:43:7: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movq    %rax, __ZL7my_perl(%rip)
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:45:20: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         movq    __ZL7my_perl(%rip), %rax
[polymake-3.0r1]                              ^~~~
[polymake-3.0r1] <stdin>:46:7: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movq    %rax, %rdi
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:49:20: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         movq    __ZL7my_perl(%rip), %rax
[polymake-3.0r1]                              ^~~~
[polymake-3.0r1] <stdin>:50:20: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         movq    __ZL7my_perl(%rip), %rdx
[polymake-3.0r1]                              ^~~~
[polymake-3.0r1] <stdin>:51:14: error: register %rdx is only available in 64-bit mode
[polymake-3.0r1]         movzbl  1150(%rdx), %edx
[polymake-3.0r1]                      ^~~~
[polymake-3.0r1] <stdin>:53:17: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movb    %dl, 1150(%rax)
[polymake-3.0r1]                           ^~~~
[polymake-3.0r1] <stdin>:55:20: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         movq    __ZL7my_perl(%rip), %rax
[polymake-3.0r1]                              ^~~~
[polymake-3.0r1] <stdin>:56:11: error: register %rbp is only available in 64-bit mode
[polymake-3.0r1]         leaq    -32(%rbp), %rdx
[polymake-3.0r1]                     ^~~~
[polymake-3.0r1] <stdin>:57:11: error: register %r8d is only available in 64-bit mode
[polymake-3.0r1]         movl    $0, %r8d
[polymake-3.0r1]                     ^~~~
[polymake-3.0r1] <stdin>:58:7: error: register %rdx is only available in 64-bit mode
[polymake-3.0r1]         movq    %rdx, %rcx
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:61:7: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movq    %rax, %rdi
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:64:20: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         movq    __ZL7my_perl(%rip), %rax
[polymake-3.0r1]                              ^~~~
[polymake-3.0r1] <stdin>:65:7: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movq    %rax, %rdi
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:68:20: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         movq    __ZL7my_perl(%rip), %rax
[polymake-3.0r1]                              ^~~~
[polymake-3.0r1] <stdin>:70:11: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         leaq    LC3(%rip), %rsi
[polymake-3.0r1]                     ^~~~
[polymake-3.0r1] <stdin>:71:7: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movq    %rax, %rdi
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:74:20: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         movq    __ZL7my_perl(%rip), %rax
[polymake-3.0r1]                              ^~~~
[polymake-3.0r1] <stdin>:75:7: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movq    %rax, %rdi
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] <stdin>:78:20: error: register %rip is only available in 64-bit mode
[polymake-3.0r1]         movq    __ZL7my_perl(%rip), %rax
[polymake-3.0r1]                              ^~~~
[polymake-3.0r1] <stdin>:79:7: error: register %rax is only available in 64-bit mode
[polymake-3.0r1]         movq    %rax, %rdi
[polymake-3.0r1]                 ^~~~
[polymake-3.0r1] 
[polymake-3.0r1] 
[polymake-3.0r1] On some systems the library is contained in a separate package named like
[polymake-3.0r1] perl-devel or libperl-dev.  Please look for such a package and install it.
[polymake-3.0r1] 
[polymake-3.0r1] As a last resort, you can configure polymake with the option --without-callable .
[polymake-3.0r1] You won't be able to build the callable library any more, but at least you get
[polymake-3.0r1] polymake compiled.
[polymake-3.0r1] Several configurations for MacOS platform found;
[polymake-3.0r1] Please specify the desired one using the option Arch=<NAME>.
[polymake-3.0r1] Makefile:32: *** CONFIGURATION ERROR.  Stop.
[polymake-3.0r1] 
[polymake-3.0r1] real	0m1.446s
[polymake-3.0r1] user	0m0.940s
[polymake-3.0r1] sys	0m0.350s
[polymake-3.0r1] ************************************************************************
[polymake-3.0r1] Error installing package polymake-3.0r1
[polymake-3.0r1] ************************************************************************
[polymake-3.0r1] Please email sage-devel (http://groups.google.com/group/sage-devel)
[polymake-3.0r1] explaining the problem and including the relevant part of the log file
[polymake-3.0r1]   /Users/mkoeppe/cvs/sage/logs/pkgs/polymake-3.0r1.log
[polymake-3.0r1] Describe your computer, operating system, etc.
[polymake-3.0r1] If you want to try to fix the problem yourself, *don't* just cd to
[polymake-3.0r1] /Users/mkoeppe/cvs/sage/local/var/tmp/sage/build/polymake-3.0r1 and type 'make' or whatever is appropriate.
[polymake-3.0r1] Instead, the following commands setup all environment variables
[polymake-3.0r1] correctly and load a subshell for you to debug the error:
[polymake-3.0r1]   (cd '/Users/mkoeppe/cvs/sage/local/var/tmp/sage/build/polymake-3.0r1' && '/Users/mkoeppe/cvs/sage/sage' --sh)
[polymake-3.0r1] When you are done debugging, you can type "exit" to leave the subshell.
[polymake-3.0r1] ************************************************************************
make[1]: *** [/Users/mkoeppe/cvs/sage/local/var/lib/sage/installed/polymake-3.0r1] Error 1

comment:7 Changed 3 years ago by mkoeppe

It finds my Fink installation (though I removed it from PATH for building Sage) -- should this be disabled? It does not find Perl -- should I install it in Fink or should we have a Perl package in Sage as a prerequisite?

comment:8 Changed 3 years ago by dimpase

this might be a mismatch between the code emitted by quite new gcc and old assembler, which is unable to compile this into binary. There were a number of such OSX-only reports recently, check the sage-develop...

comment:9 Changed 3 years ago by dimpase

yeah, try to move Fink totally to some /opt/blah place and try again...

comment:10 Changed 3 years ago by mkoeppe

OK. After hiding Fink, I get:

[polymake-3.0r1] checking fink installation ... The Fink package system is a mandatory prerequisite to build and use polymake under MacOS.
[polymake-3.0r1] Please refer to http://www.polymake.org/doku.php/mac for details and installation instructions.
[polymake-3.0r1] If you already have Fink installed at a non-standard location, please specify it using option --with-fink

I'll start again with a fresh install of Fink and install some perl there.

comment:11 follow-up: Changed 3 years ago by mkoeppe

I will first try to install polymake from source outside of Sage -- this already fails on my machine; I have asked in the Polymake forum for help.

Vincent: I think the right package to use in Sage would be the "minimal" package which picks up cdd, lrs, nauty from the Sage distribution.

comment:12 Changed 3 years ago by git

  • Commit changed from cf20c0bc56e475f36012d8a8fef06f7a44f8f6a5 to 713099644163e9f374bdde81486605187eafe365

Branch pushed to git repo; I updated commit sha1. New commits:

7130996Trac 20892: use the minimal tarball

comment:13 in reply to: ↑ 11 Changed 3 years ago by vdelecroix

Replying to mkoeppe:

Vincent: I think the right package to use in Sage would be the "minimal" package which picks up cdd, lrs, nauty from the Sage distribution.

right. done.

comment:14 Changed 3 years ago by vdelecroix

  • Description modified (diff)

comment:15 Changed 3 years ago by git

  • Commit changed from 713099644163e9f374bdde81486605187eafe365 to c4b2b0edba372135bf46b1459a4e5a3d9be7205d

Branch pushed to git repo; I updated commit sha1. New commits:

c4b2b0eTrac 20892: replace tabs with spaces

comment:16 Changed 3 years ago by mkoeppe

See #20894 for a first step towards an OS X build

comment:17 follow-up: Changed 3 years ago by mkoeppe

I solved the problem on Mac OS X with the following patch for Polymake, which gets rid of various "-arch" options. The "-arch" options caused the above errors "register %rbp is only available in 64-bit mode" etc.

--- /Users/mkoeppe/s/polymake-3.0/support/configure.pl	2016-01-25 05:34:27.000000000 -0800
+++ src/support/configure.pl	2016-06-27 16:13:24.000000000 -0700
@@ -503,7 +503,7 @@
       }
       print "ok\n";
       if ( $NeedsArchFlag ) {
-         $ARCHFLAGS="-arch $Platform";
+         $ARCHFLAGS="";
       } else {
          $ARCHFLAGS="";
       }
@@ -525,7 +525,7 @@
          }
       }
       if ( $NeedsArchFlag ) {
-         $ARCHFLAGS="-arch $Platform";
+         $ARCHFLAGS="";
       } else {
          $ARCHFLAGS="";
       }
@@ -738,7 +738,14 @@
       # We also build a test program for libperl since e.g. on Debian based systems the
       # check for Config::Config{libperl} will not detect a missing libperl-dev package
       chomp(my $perlldflags = `$PERL -MExtUtils::Embed -e ldopts`);
-      my $build_error=build_test_program(<<'---', CXXflags => `$PERL -MExtUtils::Embed -e ccopts`, LDflags => "$ARCHFLAGS $perlldflags" );
+
+      my $allarch=qr/ -arch \s+ \S+ (?: \s+ -arch \s+ \S+)* /x;
+      $CXXflags =  `$PERL -MExtUtils::Embed -e ccopts` ;
+      $CXXflags =~ s/$allarch//o;
+      $LDflags = $perlldflags;
+      $LDflags =~ s/$allarch//o;
+
+      my $build_error=build_test_program(<<'---', CXXflags => $CXXflags , LDflags => $LDflags );
 #include <EXTERN.h>
 #include <perl.h>
 

And here is a quick change to spkg-install.

diff --git a/build/pkgs/polymake/spkg-install b/build/pkgs/polymake/spkg-install
index f8e6145..2198466 100755
--- a/build/pkgs/polymake/spkg-install
+++ b/build/pkgs/polymake/spkg-install
@@ -7,6 +7,7 @@ cd src
             --exec-prefix="$SAGE_LOCAL" \
             --includedir="$SAGE_LOCAL"/include \
             --bindir="$SAGE_LOCAL"/bin \
-            --libdir="$SAGE_LOCAL"/lib
+            --libdir="$SAGE_LOCAL"/lib \
+	    --without-fink
 make
 make install

With these changes, Polymake built successfully.

comment:18 follow-up: Changed 3 years ago by kcrisman

Can you make a package with this? I tried to test it by creating the right patch directory and changing the spkg-install for applying patches but I tend to always make a mess of that. Anyway, having done that, it did get quite a bit further (including #20894) though I did get some warnings e.g.

[polymake-3.0r1] bundled extension group ... disabled because of unsatisfied prerequisite: lrs

But anyway it is making vastly more progress than before, so please bundle this up and with any luck I can help give positive review (I'm assuming it will take a little longer than I want to stay up now to finish!). Great, great work.

comment:19 Changed 3 years ago by mkoeppe

#20692 could help with automating the patching.

comment:20 in reply to: ↑ 18 ; follow-up: Changed 3 years ago by mkoeppe

Replying to kcrisman:

I did get some warnings e.g.

[polymake-3.0r1] bundled extension group ... disabled because of unsatisfied prerequisite: lrs

Yes, I also get a few of those, but the polymake install goes through after that. Details of the 'bundled extensions' can be found in the package build directory ($SAGE_LOCAL/var/tmp/sage/build/polymake-3.0r1/src/build.darwin.x86_64/bundled.log):

Configuration of the following bundled extensions failed, proceeding without them.
If you really need them, please carefully read the following explanations,
take the suggested actions, and repeat the configuration.

---- bliss ----

Could not compile a test program checking for bliss library.
The most probable reasons are that the library is installed at a non-standard location,
is not configured to build a shared module, or missing at all.
The complete error log follows:

/var/folders/38/wnh4gf1552g_crsjnv2vmmww0000gn/T//polymake_25377_configure.cc:1:26: fatal error: bliss/graph.hh: No such file or directory
 #include "bliss/graph.hh"
                          ^
compilation terminated.

Please install the library and specify its location using --with-bliss option, if needed.
Please remember to enable shared modules when configuring the bliss library!

If you are running a Debian system and now see some missing GMP functions in the error message,
then you've got an old broken bliss package;  please upgrade it to the latest version.

I don't know what bliss is but I tried to install it -- but it gave me an error. Reported on #20871.

---- lrs ----

Could not compile a test program checking for lrs library.
The most probable reasons are that the library is installed at a non-standard location,
is not configured to build a shared module, or missing at all.
The complete error log follows:

Undefined symbols for architecture x86_64:
  "_lrs_ifp", referenced from:
      _readrat in liblrsgmp.a(lrsgmp-GMP.o)
      _readmp in liblrsgmp.a(lrsgmp-GMP.o)
      _lrs_mp_init in liblrsgmp.a(lrsgmp-GMP.o)
  "_lrs_ofp", referenced from:
      _readrat in liblrsgmp.a(lrsgmp-GMP.o)
      _pmp in liblrsgmp.a(lrsgmp-GMP.o)
      _prat in liblrsgmp.a(lrsgmp-GMP.o)
      _readmp in liblrsgmp.a(lrsgmp-GMP.o)
      _lrs_mp_init in liblrsgmp.a(lrsgmp-GMP.o)
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status

Please install the library and specify its location using --with-lrs option, if needed.
Please remember to enable shared modules when configuring the lrs library!

I do have lrslib installed. This needs investigating.

---- singular ----

Could not find 'libsingular-config' in path at bundled/singular/configure.pl line 36.

I think singular is standard, but there seems to be no libsingular-config.

---- soplex ----

Could not compile a test program checking for SoPlex.
Please make sure SoPlex was compiled with 'GMP=true' and 'SHARED=true'
and specify its location using --with-soplex=PATH.
The complete error log follows:

/var/folders/38/wnh4gf1552g_crsjnv2vmmww0000gn/T//polymake_25377_configure.cc:3:20: fatal error: soplex.h: No such file or directory
 #include "soplex.h"
                    ^
compilation terminated.

OK, yes, we don't have SoPlex?. This is part of the SCIP Optimization Suite. (#10879)

comment:21 in reply to: ↑ 20 Changed 3 years ago by mkoeppe

Replying to mkoeppe:

---- lrs ----

Could not compile a test program checking for lrs library.
The most probable reasons are that the library is installed at a non-standard location,
is not configured to build a shared module, or missing at all.
The complete error log follows:

Undefined symbols for architecture x86_64:
  "_lrs_ifp", referenced from:
      _readrat in liblrsgmp.a(lrsgmp-GMP.o)
      _readmp in liblrsgmp.a(lrsgmp-GMP.o)
      _lrs_mp_init in liblrsgmp.a(lrsgmp-GMP.o)
  "_lrs_ofp", referenced from:
      _readrat in liblrsgmp.a(lrsgmp-GMP.o)
      _pmp in liblrsgmp.a(lrsgmp-GMP.o)
      _prat in liblrsgmp.a(lrsgmp-GMP.o)
      _readmp in liblrsgmp.a(lrsgmp-GMP.o)
      _lrs_mp_init in liblrsgmp.a(lrsgmp-GMP.o)
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status

Please install the library and specify its location using --with-lrs option, if needed.
Please remember to enable shared modules when configuring the lrs library!

I do have lrslib installed. This needs investigating.

Apparently it needs the shared library. This is #20886.

comment:22 Changed 3 years ago by kcrisman

bliss is like nauty. I think we even have a package for it, or maybe it's even standard.

comment:23 Changed 3 years ago by kcrisman

Some stuff from the tutorial works, some not.

$ ./sage -sh -c polymake
Welcome to polymake version 3.0
Copyright (c) 1997-2015
Ewgenij Gawrilow, Michael Joswig (TU Berlin)
http://www.polymake.org

This is free software licensed under GPL; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Press F1 or enter 'help;' for basic instructions.

Application polytope currently uses following third-party software packages:
cdd, libnormaliz, ppl, sketch, threejs, tikz, tosimplex
For more details:  show_credits;

Warning: some rulefiles could not be configured automatically
due to lacking third-party software and/or other issues.
To see the complete list: show_unconfigured;
polytope > $points=new Matrix<Rational>([[1,-1,-1],[1,1,-1],[1,-1,1],[1,1,1],[1,0,0]]);

polytope > $p=new Polytope<Rational>(POINTS=>$points);

polytope > print isomorphic(cube(2),$p);

polymake:  ERROR: Undefined subroutine &Polymake::User::isomorphic called at input line 1.
polytope > $c1=cube(2);

polytope > $c2=cube(2,2);

polytope > $p1x2=product($c1,$c2);

polytope > $p2x1=product($c2,$c1);

polytope > $nc=conv($p1x2,$p2x1);

polytope > print $c1->VERTICES;
1 -1 -1
1 1 -1
1 -1 1
1 1 1

polytope >  print $c1->VOLUME;
4
polytope > print isomorphic($p1x2,cube(4));

polymake:  ERROR: Undefined subroutine &Polymake::User::isomorphic called at input line 1.
polytope > print congruent($p1x2,cube(4));

polymake:  ERROR: Undefined subroutine &Polymake::User::congruent called at input line 1.

Not sure this should hold this up, though, since this is a massive improvement on the current situation!

comment:24 Changed 3 years ago by mkoeppe

Do these examples from the tutorial work in the online polymake shell?

comment:25 follow-up: Changed 3 years ago by vdelecroix

It does work for me. I guess for isomorphism and congruence you need bliss or nauty. They do not appear in your list. Whereas for me I have.

$ sage -sh -c polymake
...
Application polytope currently uses following third-party software packages:
bliss, cdd, graphviz, libnormaliz, lrs, permlib, ppl,
sketch, sympol, threejs, tikz, tosimplex
...

comment:26 follow-up: Changed 3 years ago by mkoeppe

  • Dependencies set to #20894,#20886

Various of these packages do not come bundled with at least the minimal polymake distribution that the patch uses. On your system, are they coming from the Linux distribution?

comment:27 in reply to: ↑ 26 ; follow-up: Changed 3 years ago by vdelecroix

Replying to mkoeppe:

Various of these packages do not come bundled with at least the minimal polymake distribution that the patch uses. On your system, are they coming from the Linux distribution?

They might. I do have them installed on my Linux system. From the log, it is impossible to tell how polymake configure script actually finds bliss. I have one from the system and one in Sage. And with the very same version

$ bliss -version
bliss version 0.72
$ sage -sh -c "bliss -version"
bliss version 0.72
Last edited 3 years ago by kcrisman (previous) (diff)

comment:28 in reply to: ↑ 25 Changed 3 years ago by kcrisman

It does work for me. I guess for isomorphism and congruence you need bliss or nauty.

Oh yeah, fair enough!

I would say that having a sensible message when installing this package that says "here is what you will miss out on" would be worthwhile, but this shouldn't hold up getting this in so people have at least some polymake functionality.

comment:29 in reply to: ↑ 27 Changed 3 years ago by mkoeppe

  • Dependencies changed from #20894,#20886 to #20894,#20886,#20901

Replying to vdelecroix:

Replying to mkoeppe:

Various of these packages do not come bundled with at least the minimal polymake distribution that the patch uses. On your system, are they coming from the Linux distribution?

They might. I do have them installed on my Linux system. From the log, it is impossible to tell how polymake configure script actually finds bliss. I have one from the system and one in Sage. And with the very same version

$ bliss -version
bliss version 0.72
$ sage -sh -c "bliss -version"
bliss version 0.72

See #20901 -- our bliss package needs updating, or Polymake can't use it.

comment:30 Changed 3 years ago by mkoeppe

Vincent: Should I push the changes for Mac OS to this ticket?

comment:31 follow-up: Changed 3 years ago by vdelecroix

Sure. Please inform upstream of any patching.

comment:32 Changed 3 years ago by mkoeppe

  • Branch changed from u/vdelecroix/20892 to u/mkoeppe/20892

comment:33 in reply to: ↑ 17 Changed 3 years ago by mkoeppe

  • Commit changed from c4b2b0edba372135bf46b1459a4e5a3d9be7205d to 8e7943f54c9cb767ef4909b569960e1aa4edc45c

I have committed the changes from mkoeppe for Mac OS X. I have merged the branch for #20894, because polymake won't build without it on Mac OS X.

Didn't merge #20886 -- reviewers are asked to test this too.


New commits:

a7b33e0polymake: Build fixes for Mac OS X
3c5a4acAdd Sage package for Perl 5 readline library
ac47794Set PERL5LIB environment variable
8e7943fMerge remote-tracking branch 'trac/u/mkoeppe/sage_package_for_perl_5_readline_library' into t/20892/20892

comment:34 in reply to: ↑ 31 Changed 3 years ago by mkoeppe

Replying to vdelecroix:

Sure. Please inform upstream of any patching.

I've posted a message in the polymake forum.

My patch for polymake configuration is prepared from here: https://github.com/mkoeppe/polymake/tree/sage-package

comment:35 Changed 3 years ago by vdelecroix

  • Description modified (diff)

comment:36 Changed 3 years ago by vdelecroix

cython wrappers at work at https://github.com/videlec/pypolymake

comment:37 Changed 3 years ago by git

  • Commit changed from 8e7943f54c9cb767ef4909b569960e1aa4edc45c to 2806ad49c68c35718474d1d3fc8204cb16bf2dcd

Branch pushed to git repo; I updated commit sha1. New commits:

4088becMerge tag '7.3.beta6' into t/20894/sage_package_for_perl_5_readline_library
cfffc5eConditionalize ARCHFLAGS based on uname
2806ad4Merge remote-tracking branch 'trac/u/mkoeppe/sage_package_for_perl_5_readline_library' into t/20892/20892

comment:38 Changed 3 years ago by mkoeppe

  • Description modified (diff)

comment:39 follow-up: Changed 3 years ago by mkoeppe

Vincent, what's the plan regarding the old tests in sage.geometry.polytope, which fail? Should they just be disabled?

comment:40 follow-up: Changed 3 years ago by git

  • Commit changed from 2806ad49c68c35718474d1d3fc8204cb16bf2dcd to 7e23c614d0dd7d57b866d8b8288b01ac57fff5ef

Branch pushed to git repo; I updated commit sha1. New commits:

7e23c61Add information about dependencies

comment:41 in reply to: ↑ 40 ; follow-up: Changed 3 years ago by dimpase

Replying to git:

Branch pushed to git repo; I updated commit sha1. New commits:

7e23c61Add information about dependencies

this appears to contradict the need for Perl 5 package, at #20894.

comment:42 in reply to: ↑ 41 ; follow-up: Changed 3 years ago by mkoeppe

Replying to dimpase:

Replying to git:

Branch pushed to git repo; I updated commit sha1. New commits:

7e23c61Add information about dependencies

this appears to contradict the need for Perl 5 package, at #20894.

Not really. #20894 adds the one missing bit that is not standard on OS X and which is "tricky to install".

Last edited 3 years ago by mkoeppe (previous) (diff)

comment:43 in reply to: ↑ 42 ; follow-up: Changed 3 years ago by dimpase

Replying to mkoeppe:

Replying to dimpase:

Replying to git:

Branch pushed to git repo; I updated commit sha1. New commits:

7e23c61Add information about dependencies

this appears to contradict the need for Perl 5 package, at #20894.

Not really. #20894 adds the one missing bit that is not standard on OS X and which is "tricky to install".

But you say in the update:

On Mac OS X, all modules appear to be standard.

comment:44 Changed 3 years ago by git

  • Commit changed from 7e23c614d0dd7d57b866d8b8288b01ac57fff5ef to 603e77dc09895c55a58d1ddf3b9056fa73a3b560

Branch pushed to git repo; I updated commit sha1. New commits:

603e77dAdd more dependencies information

comment:45 in reply to: ↑ 43 Changed 3 years ago by mkoeppe

Replying to dimpase:

But you say in the update:

On Mac OS X, all modules appear to be standard.

Ah, thanks. I've reworded it (and added some more info).

comment:46 in reply to: ↑ 39 Changed 3 years ago by vdelecroix

Replying to mkoeppe:

Vincent, what's the plan regarding the old tests in sage.geometry.polytope, which fail? Should they just be disabled?

For now on we can just mark them as # not tested or # bug. Anyway the polymake.py file is completely broken and should be replaced by something that works (like pypolymake).

comment:47 follow-up: Changed 3 years ago by kcrisman

<joke>Is featureful a word? I prefer OED to Wiktionary :)</joke>

That's too bad about the bliss package on Sage. How easy is it to install some of those non-Sage package things on OS X? (I'm not planning to test this, just asking in case that will be useful to users.)

Also,

+Also this old-style Sage package can be installed for a more
+featureful Polymake installation:
+ sage -p qhull
+
+Software that would need to be installed manually (no Sage package
+ available) for a more featureful Polymake installation:
+ azove,
+ porta,
+ vinci,
+ SplitsTree4,
+ bliss 

Should this information be in a place beyond the SPKG.txt, which after all no one except developers will read? (And then could be put in a md or rst format...) Sorry for the interloping.

comment:48 in reply to: ↑ 47 Changed 3 years ago by mkoeppe

Replying to kcrisman:

<joke>Is featureful a word? I prefer OED to Wiktionary :)</joke>

It is a word in more featureful versions of the English language ;)

That's too bad about the bliss package on Sage. How easy is it to install some of those non-Sage package things on OS X? (I'm not planning to test this, just asking in case that will be useful to users.)

It depends. Ideally we should probably have Sage packages -- this is now task ticket #20977.

Also,

+Also this old-style Sage package can be installed for a more
+featureful Polymake installation:
+ sage -p qhull
+
+Software that would need to be installed manually (no Sage package
+ available) for a more featureful Polymake installation:
+ azove,
+ porta,
+ vinci,
+ SplitsTree4,
+ bliss 

Should this information be in a place beyond the SPKG.txt, which after all no one except developers will read? (And then could be put in a md or rst format...) Sorry for the interloping.

Well,

sage -info polymake

would display this information.

I guess it would make sense to generate some documentation from it automatically. I'm not sure if the existence of packages is advertised anywhere except in the source tree. I always just try "sage -i PACKAGENAME" and when it starts looking for old-style stuff, I hit C-c.

comment:49 Changed 3 years ago by git

  • Commit changed from 603e77dc09895c55a58d1ddf3b9056fa73a3b560 to 5c56b55416d03deaf01b702af81f6cf4c7b53028

Branch pushed to git repo; I updated commit sha1. New commits:

5c56b55Disable all tests in broken polymake interface

comment:50 Changed 3 years ago by mkoeppe

  • Dependencies changed from #20894,#20886,#20901 to #20894,#20886
  • Description modified (diff)

comment:51 Changed 3 years ago by dimpase

On x86_64, as well as on i686, after installation, I get Unrecognized character \x7F;:

polytope > show_unconfigured;
topcom.rules
  TOPCOM is a package for computing Triangulations Of Point Configurations and Oriented Matroids.
  Copyright by Jörg Rambau.
  http://www.rambau.wm.uni-bayreuth.de/TOPCOM/

azove.rules
  azove is a tool designed for counting (without explicit enumeration) and enumeration of 0/1 vertices.
  Copyright by Markus Behle
  http://www.mpi-inf.mpg.de/~behle/azove.html


polymake:  ERROR: "/home/scratch/dimpase/sage/sage/local/lib/polymake/lib/polytope.so", line 1: Unrecognized character \x7F; marked by <-- HERE after <-- HERE near column 1
polytope > 

comment:52 Changed 3 years ago by mkoeppe

I see this too on Mac OS X. I think it's an upstream issue.

comment:53 Changed 3 years ago by mkoeppe

comment:54 Changed 3 years ago by git

  • Commit changed from 5c56b55416d03deaf01b702af81f6cf4c7b53028 to c87ddab01f490104895b8801e37b6c02a8464c7b

Branch pushed to git repo; I updated commit sha1. New commits:

c87ddabChange type to experimental (for now)

comment:55 Changed 3 years ago by mkoeppe

  • Component changed from packages: optional to packages: experimental

Downgraded package type from "optional" to "experimental", as suggested at https://trac.sagemath.org/ticket/20894#comment:28

comment:56 follow-up: Changed 3 years ago by dimpase

I forgot to add that on the i686 system (running Ubuntu 14.04) I needed to do sudo cpan -i XML::Writer (in addition to all the recommended apt-get install... for building to finish normally.

comment:57 in reply to: ↑ 56 ; follow-up: Changed 3 years ago by mkoeppe

Replying to dimpase:

I forgot to add that on the i686 system (running Ubuntu 14.04) I needed to do sudo cpan -i XML::Writer (in addition to all the recommended apt-get install... for building to finish normally.

Does the distribution package libxml-writer-perl work as well?

comment:58 in reply to: ↑ 57 Changed 3 years ago by dimpase

Replying to mkoeppe:

Replying to dimpase:

I forgot to add that on the i686 system (running Ubuntu 14.04) I needed to do sudo cpan -i XML::Writer (in addition to all the recommended apt-get install... for building to finish normally.

Does the distribution package libxml-writer-perl work as well?

I don't know. There is no inverse for cpan -i, so it's unclear how to check.

comment:59 Changed 3 years ago by git

  • Commit changed from c87ddab01f490104895b8801e37b6c02a8464c7b to deabb70525a2941e4944421badbef04124b6bafc

Branch pushed to git repo; I updated commit sha1. New commits:

deabb70Add option 'sage -polymake'

comment:60 Changed 3 years ago by mkoeppe

  • Cc ​stumpc5 moritz added

comment:61 follow-up: Changed 3 years ago by mkoeppe

According to https://forum.polymake.org/viewtopic.php?f=10&t=517:

Currently polymake does not have any provisions for finding the nauty package outside own source code. I'd suggest you use the complete source tarball of polymake instead of the "minimal" one; you can disable undesired extensions via configuration like this: --without-jreality.

comment:62 in reply to: ↑ 61 Changed 3 years ago by dimpase

Replying to mkoeppe:

According to https://forum.polymake.org/viewtopic.php?f=10&t=517:

Currently polymake does not have any provisions for finding the nauty package outside own source code. I'd suggest you use the complete source tarball of polymake instead of the "minimal" one; you can disable undesired extensions via configuration like this: --without-jreality.

This should be trivial to patch... I don't think we want a megatarball.

comment:63 Changed 3 years ago by mkoeppe

The "minimal tarball" that we use omits not only the nauty sources, but also polymake's interface to it (see https://github.com/mkoeppe/polymake/tree/sage-package/bundled/nauty) So it's not just a matter of patching someone's configure scripts.

It appears that a polymake install can only use bliss OR nauty. So I think I'll ignore nauty for now and fix bliss instead (#20901).

comment:64 Changed 3 years ago by git

  • Commit changed from deabb70525a2941e4944421badbef04124b6bafc to 84492b114ecd9654017bbaf40d8a6889daa34e70

Branch pushed to git repo; I updated commit sha1. New commits:

d27433fMerge tag '7.3.beta8' into t/20892/20892
84492b1polymake build: disable fink

comment:65 Changed 3 years ago by mkoeppe

With the new bliss package installed (#20901) and rebuilt polymake, the command show_unconfigured; now works without error.

Ready for review...

comment:66 Changed 3 years ago by dimpase

  • Dependencies changed from #20894,#20886 to #20894,#20886,#20901

isn't #20901 a dependence of this ticket now?

comment:67 Changed 3 years ago by mkoeppe

Much of polymake seems to work without bliss, which is why I didn't mark it as a dependency.

comment:68 Changed 3 years ago by vdelecroix

  • Status changed from needs_review to needs_work
[polymake-3.0r1] patching file support/configure.pl
[polymake-3.0r1] Unrecognized option --without-fink;
[polymake-3.0r1] Try ./configure --help for detailed information

comment:69 Changed 3 years ago by git

  • Commit changed from 84492b114ecd9654017bbaf40d8a6889daa34e70 to dbc5d60c1832e8f2100141f52ae725be769ea51b

Branch pushed to git repo; I updated commit sha1. New commits:

ef11a12Merge tag '7.3.beta9' into t/20892/20892
dbc5d60Use --without-fink only on Mac OS X

comment:70 Changed 3 years ago by mkoeppe

  • Status changed from needs_work to needs_review

comment:71 Changed 3 years ago by git

  • Commit changed from dbc5d60c1832e8f2100141f52ae725be769ea51b to 6156bb9af93a1884327af368fc709b0a344f452b

Branch pushed to git repo; I updated commit sha1. New commits:

6156bb9pypolymake package

comment:72 Changed 3 years ago by git

  • Commit changed from 6156bb9af93a1884327af368fc709b0a344f452b to 91fe2d503cbfbeb2364bdf79d4cc3bce06767fc5

Branch pushed to git repo; I updated commit sha1. New commits:

8923490Update polymake to 3.0r2
60caf7aHandle errors. Remove old installation before installing
7d1fd0aRun polymake --reconfigure
91fe2d5Fixup "-arch" flags on Mac OS X. Increase verbosity

comment:73 Changed 3 years ago by dimpase

test, pls ignore...

comment:74 Changed 3 years ago by mkoeppe

  • Summary changed from package polymake 3.0 to package polymake 3.0 and pypolymake

comment:75 Changed 3 years ago by mkoeppe

  • Authors changed from Vincent Delecroix to Vincent Delecroix, Matthias Koeppe
  • Reviewers set to Matthias Koeppe, NEEDS MORE REVIEWERS

Needs another reviewer.

comment:76 Changed 3 years ago by vdelecroix

  • Status changed from needs_review to needs_work

1 - pypolymake is not ready to be considered as an optional package!

2 - the following is not allowed in spkg-install as it needs internet access

pip install --verbose --ignore-installed --no-deps pypolymake

I would rather stick to ship polymake.

comment:77 Changed 3 years ago by git

  • Commit changed from 91fe2d503cbfbeb2364bdf79d4cc3bce06767fc5 to 33100922e6b6fc4026287fd35fe451c1a7b0be7b

Branch pushed to git repo; I updated commit sha1. New commits:

3310092Remove pypolymake package for now

comment:78 Changed 3 years ago by mkoeppe

  • Description modified (diff)
  • Status changed from needs_work to needs_review

OK. The follow-up ticket is in #21170.

comment:79 Changed 3 years ago by mkoeppe

  • Summary changed from package polymake 3.0 and pypolymake to package polymake 3.0

comment:80 Changed 3 years ago by mkoeppe

  • Cc tscrim added

comment:81 Changed 3 years ago by vdelecroix

tarball link in ticket description indicates polymake-3.0r1-minimal.tar.bz2 while in spkg-install there is 3.0r2...

comment:82 Changed 3 years ago by vdelecroix

(thanks for splitting pypolymake)

comment:83 follow-up: Changed 3 years ago by vdelecroix

weird

$ sage -f polymake
... <snip> ...
[polymake-3.0r2] bundled extension bliss ... /tmp/polymake_21906_configure: error while loading shared libraries: libgmp.so.16: cannot open shared object file: No such file or directory
[polymake-3.0r2] bundled extension cdd ... /tmp/polymake_21906_configure: error while loading shared libraries: libgmp.so.16: cannot open shared object file: No such file or directory
[polymake-3.0r2] bundled extension lrs ... /tmp/polymake_21906_configure: error while loading shared libraries: libgmp.so.16: cannot open shared object file: No such file or directory
[polymake-3.0r2] bundled extension ppl ... /tmp/polymake_21906_configure: error while loading shared libraries: libppl.so.14: cannot open shared object file: No such file or directory
... <snip> ...

Is this expected!?

comment:84 Changed 3 years ago by mkoeppe

  • Description modified (diff)

comment:85 in reply to: ↑ 83 ; follow-up: Changed 3 years ago by mkoeppe

Replying to vdelecroix:

$ sage -f polymake
... <snip> ...
[polymake-3.0r2] bundled extension bliss ... /tmp/polymake_21906_configure: error while loading shared libraries: libgmp.so.16: cannot open shared object file: No such file or directory
[polymake-3.0r2] bundled extension cdd ... /tmp/polymake_21906_configure: error while loading shared libraries: libgmp.so.16: cannot open shared object file: No such file or directory
[polymake-3.0r2] bundled extension lrs ... /tmp/polymake_21906_configure: error while loading shared libraries: libgmp.so.16: cannot open shared object file: No such file or directory
[polymake-3.0r2] bundled extension ppl ... /tmp/polymake_21906_configure: error while loading shared libraries: libppl.so.14: cannot open shared object file: No such file or directory
... <snip> ...

Is this expected!?

No. It works without error on my machine (Mac OS X).

comment:86 in reply to: ↑ 85 Changed 3 years ago by vdelecroix

Replying to mkoeppe:

Replying to vdelecroix:

<snip error report> Is this expected!?

No. It works without error on my machine (Mac OS X).

The thing is that the above did not interrupt the build (still waiting for the end of compilation...). I discovered them by grepping my install.log. I will tell what is happening with bliss, cdd, lrs and ppl interfaces inside polymake.

Last edited 3 years ago by vdelecroix (previous) (diff)

comment:87 Changed 3 years ago by vdelecroix

compilation finished and

polytope > show_unconfigured;
topcom.rules
  TOPCOM is a package for computing Triangulations Of Point Configurations and Oriented Matroids.
  Copyright by Jörg Rambau.
  http://www.rambau.wm.uni-bayreuth.de/TOPCOM/

azove.rules
  azove is a tool designed for counting (without explicit enumeration) and enumeration of 0/1 vertices.
  Copyright by Markus Behle
  http://www.mpi-inf.mpg.de/~behle/azove.html

porta.rules
  PORTA is a collection of routines for analyzing polytopes and polyhedra.
  Copyright by Thomas Christof and Andreas Loebel.
  http://www.iwr.uni-heidelberg.de/groups/comopt/software/PORTA/

vinci.rules
  Vinci - Computing Volumes of Convex Polytopes.
  Copyright by Benno Büeler, Andreas Enge, and Komei Fukuda
  http://www.lix.polytechnique.fr/Labo/Andreas.Enge/Vinci.html

latte.rules
  LattE (Lattice point Enumeration) is a computer software dedicated to the 
  problems of counting lattice points and integration inside convex polytopes.
  Copyright by Matthias Koeppe, Jesus A. De Loera and others.
  http://www.math.ucdavis.edu/~latte/


polymake:  ERROR: "/opt/sage/local/lib/polymake/lib/polytope.so", line 1: Unrecognized character \x7F; marked by <-- HERE after <-- HERE near column 1

comment:88 Changed 3 years ago by vdelecroix

As it is an experimental package we should get it into early sage-7.4 beta for more feedback!

comment:89 follow-up: Changed 3 years ago by mkoeppe

  • Status changed from needs_review to needs_work

OK, I was able to reproduce this on an Ubuntu box. One of my patches for Mac OS X is to blame. Working on it.

comment:90 Changed 3 years ago by git

  • Commit changed from 33100922e6b6fc4026287fd35fe451c1a7b0be7b to 0781fdc4b62ceefa86712e1bac3ab7019db24d8a

Branch pushed to git repo; I updated commit sha1. New commits:

f29c486polymake: Add info on prereqs and debugging
0781fdcpolymake: Set ARCHFLAGS instead of using our broken patch

comment:91 Changed 3 years ago by git

  • Commit changed from 0781fdc4b62ceefa86712e1bac3ab7019db24d8a to 0cfedca0f372b9823211ccd991e32a5570662860

Branch pushed to git repo; I updated commit sha1. New commits:

0cfedcaFixup

comment:92 Changed 3 years ago by git

  • Commit changed from 0cfedca0f372b9823211ccd991e32a5570662860 to de0cc747fe2d786c1c5e9f574b7fc80529b6ade8

Branch pushed to git repo; I updated commit sha1. New commits:

de0cc74polymake: Add bliss as a dependency

comment:93 Changed 3 years ago by git

  • Commit changed from de0cc747fe2d786c1c5e9f574b7fc80529b6ade8 to 7b096fda1a3a67d98fb899ec4fad45fd5414b77d

Branch pushed to git repo; I updated commit sha1. New commits:

8798d7dMerge tag '7.3' into t/20892/20892
3837a48bliss: Use autotoolized package from Debian
225755ebliss: Add more info in SPKG.txt
4b22211bliss: Use upstream tarball and patches
3111091Merge tag '7.3.beta9' into t/20901/upgrade_bliss_package_to_0_73_with_debian_patches__install_header_files_in_location_expected_by_polymake
1c398a3Merge tag '7.3.rc0' into t/20901/upgrade_bliss_package_to_0_73_with_debian_patches__install_header_files_in_location_expected_by_polymake
1d2707cUse repackaged archive instead of huge patch
c0c0427Adjust to changed bliss header file locations
7b096fdMerge branch 't/20901/upgrade_bliss_package_to_0_73_with_debian_patches__install_header_files_in_location_expected_by_polymake' into t/20892/20892

comment:94 Changed 3 years ago by mkoeppe

Branch has now merged the bliss ticket (#20901).

comment:95 Changed 3 years ago by mkoeppe

#21175 (Set ARCHFLAGS environment variable - for Perl modules) would make polymake's spkg-install simpler.

comment:96 in reply to: ↑ 89 Changed 3 years ago by mkoeppe

Replying to mkoeppe:

OK, I was able to reproduce this on an Ubuntu box. One of my patches for Mac OS X is to blame. Working on it.

It's now working on Ubuntu (and still on Mac OS X), please test.

comment:97 Changed 3 years ago by vdelecroix

Better. Build without any error and

polytope > show_unconfigured;
vinci.rules
  ...
azove.rules
  ...
splitstree.rules
  ...
latte.rules
  ...
topcom.rules
  ...
porta.rules
  ...
common::property_viewer.rules
common::povray.rules
  ...
common::geomview.rules
  ...
To enable an interface:  reconfigure("RULEFILE");

comment:98 follow-up: Changed 3 years ago by vdelecroix

However, after switching back to the develop branch doing sage -b gives me

/opt/sage/src/build/cythonized/sage/graphs/bliss.cpp:317:20fatal error: graph.hh: No such file or directory

comment:99 in reply to: ↑ 98 Changed 3 years ago by mkoeppe

Replying to vdelecroix:

However, after switching back to the develop branch doing sage -b gives me

/opt/sage/src/build/cythonized/sage/graphs/bliss.cpp:317:20fatal error: graph.hh: No such file or directory

Yes, that's normal. Need to keep #20901 in your branch if you have installed the bliss package from #20901.

comment:100 Changed 3 years ago by mkoeppe

  • Status changed from needs_work to needs_review

comment:101 Changed 3 years ago by vdelecroix

  • Reviewers changed from Matthias Koeppe, NEEDS MORE REVIEWERS to Matthias Koeppe, Vincent Delecroix
  • Status changed from needs_review to positive_review

It works well on top of 7.4.beta0. Setting to positive review in order to be easily available for testing.

comment:102 Changed 3 years ago by kcrisman

  • Reviewers changed from Matthias Koeppe, Vincent Delecroix to Matthias Koeppe, Vincent Delacroix, Karl-Dieter Crisman

comment:103 Changed 3 years ago by mkoeppe

  • Reviewers changed from Matthias Koeppe, Vincent Delacroix, Karl-Dieter Crisman to Matthias Koeppe, Vincent Delecroix, Karl-Dieter Crisman

comment:104 Changed 3 years ago by vbraun

  • Branch changed from u/mkoeppe/20892 to 7b096fda1a3a67d98fb899ec4fad45fd5414b77d
  • Resolution set to fixed
  • Status changed from positive_review to closed

comment:105 Changed 3 years ago by kcrisman

  • Commit 7b096fda1a3a67d98fb899ec4fad45fd5414b77d deleted

For those who really know this stuff, on a related note: http://ask.sagemath.org/question/34457/why-cant-i-compute-the-ehrhart-polynomial-of-a-polytope/?answer=34458#post-id-34458 so hopefully it will be more obvious soon what to do for this type of user.

comment:106 Changed 3 years ago by dimpase

People report that building Singular with polymake (not this one, a systemwide one) installed leads to a problem. This ought to be investigated.

Note: See TracTickets for help on using tickets.