videlec / pypolymake

Python wrappers for polymake
https://pypi.python.org/pypi/pypolymake
3 stars 5 forks source link

can't compile together with polymake beta #15

Closed mo271 closed 7 years ago

mo271 commented 7 years ago

When trying to execute the command /sage -pip install git+https://github.com/videlec/pypolymake with an install of the Polymake 3.1-beta2 version, I get the following error:

    src/polymake/number.cpp: In function ‘int __pyx_pf_8polymake_6number_8Rational_4__nonzero__(__pyx_obj_8polymake_6number_Rational*)’:
    src/polymake/number.cpp:3990:34: error: ‘class pm::Rational’ has no member named ‘non_zero’; did you mean ‘is_zero’?
       __pyx_r = __pyx_v_self->pm_obj.non_zero();
                                      ^~~~~~~~
    src/polymake/number.cpp: In function ‘PyObject* __pyx_pf_8polymake_6number_8Rational_10numerator(__pyx_obj_8polymake_6number_Rational*)’:
    src/polymake/number.cpp:4537:48: error: no matching function for call to ‘pm::Integer::set(const __mpz_struct*)’
       __pyx_v_ans->pm_obj.set(mpq_numref(__pyx_v_z));
                                                    ^
    In file included from /home/mo/sage/local/include/polymake/Integer.h:20:0,
                     from src/polymake/number.cpp:472:
    /home/mo/sage/local/include/polymake/next/Integer.h:310:13: note: candidate: pm::Integer& pm::Integer::set(const char*)
        Integer& set(const char *s)
                 ^~~
    /home/mo/sage/local/include/polymake/next/Integer.h:310:13: note:   no known conversion for argument 1 from ‘const __mpz_struct*’ to ‘const char*’
    src/polymake/number.cpp: In function ‘PyObject* __pyx_pf_8polymake_6number_8Rational_12denominator(__pyx_obj_8polymake_6number_Rational*)’:
    src/polymake/number.cpp:4629:48: error: no matching function for call to ‘pm::Integer::set(const __mpz_struct*)’
       __pyx_v_ans->pm_obj.set(mpq_denref(__pyx_v_z));
                                                    ^
    In file included from /home/mo/sage/local/include/polymake/Integer.h:20:0,
                     from src/polymake/number.cpp:472:
    /home/mo/sage/local/include/polymake/next/Integer.h:310:13: note: candidate: pm::Integer& pm::Integer::set(const char*)
        Integer& set(const char *s)
                 ^~~
    /home/mo/sage/local/include/polymake/next/Integer.h:310:13: note:   no known conversion for argument 1 from ‘const __mpz_struct*’ to ‘const char*’
    error: command 'gcc' failed with exit status 1

    ----------------------------------------
Command "/home/mo/sage/local/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-H9iPaz-build/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-eu2n_G-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-H9iPaz-build/
You are using pip version 8.1.2, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
videlec commented 7 years ago

Indeed... some of the API changed. I am opening a beta branch in this repo to try to get it work...