On system I had installed giac for all the builds I have done: giac 1.5.0.85-1.1 giac-devel 1.5.0.85-1.1 libgiac0 1.5.0.85-1.1
But ./configure didn't notice. Should I retry with uninstall giac? Tobias Tobias Weiss schrieb am Samstag, 28. November 2020 um 20:52:51 UTC+1: > Compiling with "make giac && make" stopped with giac. I give you the log. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > *[giac-1.5.0.87p2.p1] checking for lapack... no [giac-1.5.0.87p2.p1] > configure: error: Package requirements (lapack) were not met: > [giac-1.5.0.87p2.p1] [giac-1.5.0.87p2.p1] Package 'lapack', required by > 'virtual:world', not found [giac-1.5.0.87p2.p1] [giac-1.5.0.87p2.p1] > Consider adjusting the PKG_CONFIG_PATH environment variable if you > [giac-1.5.0.87p2.p1] installed software in a non-standard prefix. > [giac-1.5.0.87p2.p1] [giac-1.5.0.87p2.p1] Alternatively, you may set the > environment variables LAPACK_CFLAGS [giac-1.5.0.87p2.p1] and LAPACK_LIBS to > avoid the need to call pkg-config. [giac-1.5.0.87p2.p1] See the pkg-config > man page for more details. [giac-1.5.0.87p2.p1] > ******************************************************************************************************************************************************************************************************************************** > > [giac-1.5.0.87p2.p1] Error configuring giac-1.5.0.87p2.p1 > [giac-1.5.0.87p2.p1] See the file [giac-1.5.0.87p2.p1] > > /home/tobias/bin/sage-9.2-v3/local/var/tmp/sage/build/giac-1.5.0.87p2.p1/src/config.log > > [giac-1.5.0.87p2.p1] for details. [giac-1.5.0.87p2.p1] > ******************************************************************************************************************************************************************************************************************************** > > [giac-1.5.0.87p2.p1] [giac-1.5.0.87p2.p1] real 0m14.529s > [giac-1.5.0.87p2.p1] user 0m10.550s [giac-1.5.0.87p2.p1] sys > 0m4.271s [giac-1.5.0.87p2.p1] > ************************************************************************ > [giac-1.5.0.87p2.p1] Error installing package giac-1.5.0.87p2.p1 > [giac-1.5.0.87p2.p1] > ************************************************************************ > [giac-1.5.0.87p2.p1] Please email sage-devel > (http://groups.google.com/group/sage-devel > <http://groups.google.com/group/sage-devel>) [giac-1.5.0.87p2.p1] > explaining the problem and including the log file [giac-1.5.0.87p2.p1] > /home/tobias/bin/sage-9.2-v3/logs/pkgs/giac-1.5.0.87p2.p1.log > [giac-1.5.0.87p2.p1] Describe your computer, operating system, etc. > [giac-1.5.0.87p2.p1] If you want to try to fix the problem yourself, > *don't* just cd to [giac-1.5.0.87p2.p1] > /home/tobias/bin/sage-9.2-v3/local/var/tmp/sage/build/giac-1.5.0.87p2.p1 > and type 'make' or whatever is appropriate. [giac-1.5.0.87p2.p1] Instead, > the following commands setup all environment variables [giac-1.5.0.87p2.p1] > correctly and load a subshell for you to debug the error: > [giac-1.5.0.87p2.p1] (cd > '/home/tobias/bin/sage-9.2-v3/local/var/tmp/sage/build/giac-1.5.0.87p2.p1' > && '/home/tobias/bin/sage-9.2-v3/sage' --buildsh) [giac-1.5.0.87p2.p1] When > you are done debugging, you can type "exit" to leave the subshell. > [giac-1.5.0.87p2.p1] > ************************************************************************ > make[2]: *** [Makefile:2034: giac-no-deps] Fehler 1 make[1]: *** > [Makefile:2034: > /home/tobias/bin/sage-9.2-v3/local/var/lib/sage/installed/giac-1.5.0.87p2.p1] > Fehler 2 make[1]: Verzeichnis „/home/tobias/bin/sage-9.2-v3/build/make“ > wird verlassen * > Tobias Weiss schrieb am Samstag, 28. November 2020 um 20:41:51 UTC+1: > >> I understand: I start a new compilation with "make giac && make". It >> starts with readline and does pari now very early. >> >> Tobias Weiss schrieb am Samstag, 28. November 2020 um 20:31:13 UTC+1: >> >>> In what directory I should do "make giac && make" ? >>> >>> Tobias Weiss schrieb am Samstag, 28. November 2020 um 20:29:11 UTC+1: >>> >>>> Here the top-level config.log. Giac was compiled without problems bevor >>>> sagelib. I give you the install logs of both. Installing the static-devel >>>> of glibc didn't help. >>>> >>>> Matthias Koeppe schrieb am Samstag, 28. November 2020 um 19:47:27 UTC+1: >>>> >>>>> The actual error is likely further up. This problem could just be the >>>>> missing dependency of sagelib on giac, already fixed in >>>>> https://trac.sagemath.org/ticket/30858 >>>>> Try compiling the latest development version, >>>>> or do "make giac && make" to work around the problem >>>>> >>>>> On Saturday, November 28, 2020 at 9:32:26 AM UTC-8 tobwe...@web.de >>>>> wrote: >>>>> >>>>>> Because the last g++ command is something with stl vector: Do I need >>>>>> the glibc-static-devel? I only have glibc-devel installed. >>>>>> >>>>>> Tobias >>>>>> >>>>>> >>>>>> Tobias Weiss schrieb am Samstag, 28. November 2020 um 16:25:24 UTC+1: >>>>>> >>>>>>> Hello Everybody, >>>>>>> >>>>>>> now the second post to the problem. I try to make sage 9.2 on >>>>>>> Opensuse Tumbleweed. The compilation stopped with last step of sagelib. >>>>>>> If >>>>>>> I don't take system packages, the error don't occurs. >>>>>>> (see thread https://groups.google.com/g/sage-support/c/AJRosgRDrsE) >>>>>>> >>>>>>> Pari was take from tarball this times. The output of make ends with: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> *[sagelib-9.2] [296/297] creating >>>>>>> build/temp.linux-x86_64-3.8/build/cythonized/sage/tests [sagelib-9.2] >>>>>>> gcc >>>>>>> -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -Wall >>>>>>> -D_FORTIFY_SOURCE=2 >>>>>>> -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables >>>>>>> -fstack-clash-protection -Werror=return-type -g -DOPENSSL_LOAD_CONF >>>>>>> -fwrapv >>>>>>> -fno-semantic-interposition -O2 -Wall -D_FORTIFY_SOURCE=2 >>>>>>> -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables >>>>>>> -fstack-clash-protection -Werror=return-type -g -O2 -Wall >>>>>>> -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables >>>>>>> -fasynchronous-unwind-tables -fstack-clash-protection >>>>>>> -Werror=return-type >>>>>>> -g -fPIC -I/home/tobias/bin/sage-9.2/build/pkgs/sagelib/src >>>>>>> -I/home/tobias/bin/sage-9.2/build/pkgs/sagelib/src/sage/ext >>>>>>> -I/usr/include/python3.8 >>>>>>> -I/home/tobias/bin/sage-9.2/local/lib64/python3.8/site-packages/numpy/core/include >>>>>>> >>>>>>> -Ibuild/cythonized -I/home/tobias/bin/sage-9.2/local/include >>>>>>> -I/usr/include/python3.8 -c build/cythonized/sage/tests/cython.c -o >>>>>>> build/temp.linux-x86_64-3.8/build/cythonized/sage/tests/cython.o >>>>>>> -fno-strict-aliasing -DCYTHON_CLINE_IN_TRACEBACK=1 -std=c99 >>>>>>> [sagelib-9.2] >>>>>>> gcc -pthread -shared >>>>>>> -Wl,-rpath-link,/home/tobias/bin/sage-9.2/local/lib >>>>>>> -L/home/tobias/bin/sage-9.2/local/lib >>>>>>> -Wl,-rpath,/home/tobias/bin/sage-9.2/local/lib >>>>>>> build/temp.linux-x86_64-3.8/build/cythonized/sage/tests/cython.o >>>>>>> -L/usr/lib64 -o >>>>>>> build/lib.linux-x86_64-3.8/sage/tests/cython.cpython-38-x86_64-linux-gnu.so >>>>>>> >>>>>>> <http://cython.cpython-38-x86_64-linux-gnu.so> [sagelib-9.2] [297/297] >>>>>>> gcc >>>>>>> -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -Wall >>>>>>> -D_FORTIFY_SOURCE=2 >>>>>>> -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables >>>>>>> -fstack-clash-protection -Werror=return-type -g -DOPENSSL_LOAD_CONF >>>>>>> -fwrapv >>>>>>> -fno-semantic-interposition -O2 -Wall -D_FORTIFY_SOURCE=2 >>>>>>> -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables >>>>>>> -fstack-clash-protection -Werror=return-type -g -O2 -Wall >>>>>>> -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables >>>>>>> -fasynchronous-unwind-tables -fstack-clash-protection >>>>>>> -Werror=return-type >>>>>>> -g -fPIC >>>>>>> -I/home/tobias/bin/sage-9.2/local/lib64/python3.8/site-packages/cysignals >>>>>>> >>>>>>> -I./sage/cpython -Isage/cpython >>>>>>> -I/home/tobias/bin/sage-9.2/build/pkgs/sagelib/src >>>>>>> -I/home/tobias/bin/sage-9.2/build/pkgs/sagelib/src/sage/ext >>>>>>> -I/usr/include/python3.8 >>>>>>> -I/home/tobias/bin/sage-9.2/local/lib64/python3.8/site-packages/numpy/core/include >>>>>>> >>>>>>> -Ibuild/cythonized -I/home/tobias/bin/sage-9.2/local/include >>>>>>> -I/usr/include/python3.8 -c build/cythonized/sage/tests/stl_vector.cpp >>>>>>> -o >>>>>>> build/temp.linux-x86_64-3.8/build/cythonized/sage/tests/stl_vector.o >>>>>>> -fno-strict-aliasing -DCYTHON_CLINE_IN_TRACEBACK=1 -std=c++11 >>>>>>> [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp: In function ‘PyObject* >>>>>>> __pyx_pf_4sage_5tests_10stl_vector_14stl_int_vector_4__getitem__(__pyx_obj_4sage_5tests_10stl_vector_stl_int_vector*, >>>>>>> >>>>>>> int)’: [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp:2940:30: >>>>>>> warning: comparison of integer expressions of different signedness: >>>>>>> ‘int’ >>>>>>> and ‘std::vector<int>::size_type’ {aka ‘long unsigned int’} >>>>>>> [-Wsign-compare] [sagelib-9.2] 2940 | __pyx_t_1 = (__pyx_v_i < >>>>>>> __pyx_v_self->data->size()); [sagelib-9.2] | >>>>>>> ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp: At global scope: >>>>>>> [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp:5744:18: warning: ‘PyObject* >>>>>>> __pyx_pw_4sage_7cpython_6string_3str_to_bytes(PyObject*, PyObject*, >>>>>>> PyObject*)’ defined but not used [-Wunused-function] [sagelib-9.2] >>>>>>> 5744 | >>>>>>> static PyObject *__pyx_pw_4sage_7cpython_6string_3str_to_bytes(PyObject >>>>>>> *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { >>>>>>> [sagelib-9.2] >>>>>>> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] build/cythonized/sage/tests/stl_vector.cpp:5743:13: >>>>>>> warning: >>>>>>> ‘__pyx_doc_4sage_7cpython_6string_2str_to_bytes’ defined but not used >>>>>>> [-Wunused-variable] [sagelib-9.2] 5743 | static char >>>>>>> __pyx_doc_4sage_7cpython_6string_2str_to_bytes[] = "str_to_bytes(s, >>>>>>> encoding=None, errors=None) -> bytes\nFile: sage/cpython/string.pxd >>>>>>> (starting at line 55)\n\n Convert ``str`` or ``unicode`` to >>>>>>> ``bytes``.\n\n It encodes the given ``str`` to a Python 3 >>>>>>> ``bytes``\n >>>>>>> using the specified encoding. It is a no-op on ``bytes`` input.\n\n >>>>>>> EXAMPLES::\n\n sage: from sage.cpython.string import >>>>>>> str_to_bytes\n sage: bs = [str_to_bytes(u'\317\200')]\n >>>>>>> sage: >>>>>>> all(b == b'\\xcf\\x80' for b in bs)\n True\n sage: >>>>>>> str_to_bytes([])\n Traceback (most recent call last):\n >>>>>>> ...\n >>>>>>> TypeError: expected str... list found\n "; [sagelib-9.2] >>>>>>> | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp:5539:18: warning: ‘PyObject* >>>>>>> __pyx_pw_4sage_7cpython_6string_1bytes_to_str(PyObject*, PyObject*, >>>>>>> PyObject*)’ defined but not used [-Wunused-function] [sagelib-9.2] >>>>>>> 5539 | >>>>>>> static PyObject *__pyx_pw_4sage_7cpython_6string_1bytes_to_str(PyObject >>>>>>> *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { >>>>>>> [sagelib-9.2] >>>>>>> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] build/cythonized/sage/tests/stl_vector.cpp:5538:13: >>>>>>> warning: >>>>>>> ‘__pyx_doc_4sage_7cpython_6string_bytes_to_str’ defined but not used >>>>>>> [-Wunused-variable] [sagelib-9.2] 5538 | static char >>>>>>> __pyx_doc_4sage_7cpython_6string_bytes_to_str[] = "bytes_to_str(b, >>>>>>> encoding=None, errors=None) -> str\nFile: sage/cpython/string.pxd >>>>>>> (starting >>>>>>> at line 29)\n\n Convert ``bytes`` to ``str``.\n\n This decodes >>>>>>> the >>>>>>> given ``bytes`` to a Python 3 unicode ``str`` using\n the specified >>>>>>> encoding. It is a no-op on ``str`` input.\n\n EXAMPLES::\n\n >>>>>>> sage: from sage.cpython.string import bytes_to_str\n >>>>>>> sage: s >>>>>>> = bytes_to_str(b'\\xcf\\x80')\n sage: s == u'\317\200'\n >>>>>>> True\n sage: bytes_to_str([])\n Traceback (most >>>>>>> recent >>>>>>> call last):\n ...\n TypeError: expected bytes, list >>>>>>> found\n >>>>>>> "; [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp:5259:18: warning: ‘PyObject* >>>>>>> __pyx_pw_4sage_9structure_7richcmp_9revop(PyObject*, PyObject*)’ >>>>>>> defined >>>>>>> but not used [-Wunused-function] [sagelib-9.2] 5259 | static PyObject >>>>>>> *__pyx_pw_4sage_9structure_7richcmp_9revop(PyObject *__pyx_self, >>>>>>> PyObject >>>>>>> *__pyx_arg_op) { [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp:5258:13: warning: >>>>>>> ‘__pyx_doc_4sage_9structure_7richcmp_8revop’ defined but not used >>>>>>> [-Wunused-variable] [sagelib-9.2] 5258 | static char >>>>>>> __pyx_doc_4sage_9structure_7richcmp_8revop[] = "revop(int op) -> >>>>>>> int\nFile: >>>>>>> sage/structure/richcmp.pxd (starting at line 199)\n\n Return the >>>>>>> reverse >>>>>>> operation of ``op``.\n\n For example, <= becomes >=, etc.\n\n >>>>>>> EXAMPLES::\n\n sage: from sage.structure.richcmp import >>>>>>> revop\n >>>>>>> sage: [revop(i) for i in range(6)]\n [4, 5, 2, 3, 0, 1]\n >>>>>>> "; [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp:5132:18: warning: ‘PyObject* >>>>>>> __pyx_pw_4sage_9structure_7richcmp_7rich_to_bool_sgn(PyObject*, >>>>>>> PyObject*, >>>>>>> PyObject*)’ defined but not used [-Wunused-function] [sagelib-9.2] >>>>>>> 5132 | >>>>>>> static PyObject >>>>>>> *__pyx_pw_4sage_9structure_7richcmp_7rich_to_bool_sgn(PyObject >>>>>>> *__pyx_self, >>>>>>> PyObject *__pyx_args, PyObject *__pyx_kwds) { [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] build/cythonized/sage/tests/stl_vector.cpp:5131:13: >>>>>>> warning: >>>>>>> ‘__pyx_doc_4sage_9structure_7richcmp_6rich_to_bool_sgn’ defined but not >>>>>>> used [-Wunused-variable] [sagelib-9.2] 5131 | static char >>>>>>> __pyx_doc_4sage_9structure_7richcmp_6rich_to_bool_sgn[] = >>>>>>> "rich_to_bool_sgn(int op, Py_ssize_t c) -> bool\nFile: >>>>>>> sage/structure/richcmp.pxd (starting at line 187)\n\n Same as >>>>>>> ``rich_to_bool``, but allow any `c < 0` and `c > 0`\n instead of >>>>>>> only >>>>>>> `-1` and `1`.\n\n .. NOTE::\n\n This is in particular needed >>>>>>> for >>>>>>> ``mpz_cmp()``.\n "; [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] build/cythonized/sage/tests/stl_vector.cpp:5003:18: >>>>>>> warning: >>>>>>> ‘PyObject* __pyx_pw_4sage_9structure_7richcmp_5rich_to_bool(PyObject*, >>>>>>> PyObject*, PyObject*)’ defined but not used [-Wunused-function] >>>>>>> [sagelib-9.2] 5003 | static PyObject >>>>>>> *__pyx_pw_4sage_9structure_7richcmp_5rich_to_bool(PyObject *__pyx_self, >>>>>>> PyObject *__pyx_args, PyObject *__pyx_kwds) { [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] build/cythonized/sage/tests/stl_vector.cpp:5002:13: >>>>>>> warning: >>>>>>> ‘__pyx_doc_4sage_9structure_7richcmp_4rich_to_bool’ defined but not >>>>>>> used >>>>>>> [-Wunused-variable] [sagelib-9.2] 5002 | static char >>>>>>> __pyx_doc_4sage_9structure_7richcmp_4rich_to_bool[] = "rich_to_bool(int >>>>>>> op, >>>>>>> int c) -> bool\nFile: sage/structure/richcmp.pxd (starting at line >>>>>>> 120)\n\n >>>>>>> Return the corresponding ``True`` or ``False`` value for a rich\n >>>>>>> comparison, given the result of an old-style comparison.\n\n >>>>>>> INPUT:\n\n - ``op`` -- a rich comparison operation (e.g. >>>>>>> ``Py_EQ``)\n\n - ``c`` -- the result of an old-style comparison: -1, >>>>>>> 0 >>>>>>> or 1.\n\n OUTPUT: 1 or 0 (corresponding to ``True`` and >>>>>>> ``False``)\n\n >>>>>>> .. SEEALSO::\n\n :func:`rich_to_bool_sgn` if ``c`` could be >>>>>>> outside the\n [-1, 0, 1] range.\n\n EXAMPLES::\n\n >>>>>>> sage: >>>>>>> from sage.structure.richcmp import (rich_to_bool,\n ....: >>>>>>> op_EQ, >>>>>>> op_NE, op_LT, op_LE, op_GT, op_GE)\n sage: for op in (op_LT, >>>>>>> op_LE, >>>>>>> op_EQ, op_NE, op_GT, op_GE):\n ....: for c in (-1,0,1):\n >>>>>>> >>>>>>> ....: print(rich_to_bool(op, c))\n True False False\n >>>>>>> True True False\n False True False\n True False >>>>>>> True\n >>>>>>> False False True\n False True True\n\n Indirect tests >>>>>>> using integers::\n\n sage: 0 < 5, 5 < 5, 5 < -8\n (True, >>>>>>> False, False)\n sage: 0 <= 5, 5 <= 5, 5 <= -8\n (True, >>>>>>> True, >>>>>>> False)\n sage: 0 >= 5, 5 >= 5, 5 >= -8\n (False, True, >>>>>>> True)\n sage: 0 > 5, 5 > 5, 5 > -8\n (False, False, >>>>>>> True)\n >>>>>>> sage: 0 == 5, 5 == 5, 5 == -8\n (False, True, False)\n >>>>>>> sage: 0 != 5, 5 != 5, 5 != -8\n (True, False, True)\n >>>>>>> "; >>>>>>> [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp:4813:18: warning: ‘PyObject* >>>>>>> __pyx_pw_4sage_9structure_7richcmp_3richcmp_not_equal(PyObject*, >>>>>>> PyObject*, >>>>>>> PyObject*)’ defined but not used [-Wunused-function] [sagelib-9.2] >>>>>>> 4813 | >>>>>>> static PyObject >>>>>>> *__pyx_pw_4sage_9structure_7richcmp_3richcmp_not_equal(PyObject >>>>>>> *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { >>>>>>> [sagelib-9.2] >>>>>>> | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] build/cythonized/sage/tests/stl_vector.cpp:4812:13: >>>>>>> warning: >>>>>>> ‘__pyx_doc_4sage_9structure_7richcmp_2richcmp_not_equal’ defined but >>>>>>> not >>>>>>> used [-Wunused-variable] [sagelib-9.2] 4812 | static char >>>>>>> __pyx_doc_4sage_9structure_7richcmp_2richcmp_not_equal[] = >>>>>>> "richcmp_not_equal(x, y, int op)\nFile: sage/structure/richcmp.pxd >>>>>>> (starting at line 56)\n\n Like ``richcmp(x, y, op)`` but assuming >>>>>>> that >>>>>>> `x` is not equal to `y`.\n\n INPUT:\n\n - ``op`` -- a rich >>>>>>> comparison >>>>>>> operation (e.g. ``Py_EQ``)\n\n OUTPUT:\n\n If ``op`` is not >>>>>>> ``op_EQ`` >>>>>>> or ``op_NE``, the result of\n ``richcmp(x, y, op)``. If ``op`` is >>>>>>> ``op_EQ``, return\n ``False``. If ``op`` is ``op_NE``, return >>>>>>> ``True``.\n\n This is useful to compare lazily two objects A and B >>>>>>> according to 2\n (or more) different parameters, say width and >>>>>>> height >>>>>>> for example.\n One could use::\n\n return richcmp((A.width(), >>>>>>> A.height()), (B.width(), B.height()), op)\n\n but this will compute >>>>>>> both >>>>>>> width and height in all cases, even if\n A.width() and B.width() are >>>>>>> enough to decide the comparison.\n\n Instead one can do::\n\n >>>>>>> wA >>>>>>> = A.width()\n wB = B.width()\n if wA != wB:\n >>>>>>> return richcmp_not_equal(wA, wB, op)\n return >>>>>>> richcmp(A.height(), B.height(), op)\n\n The difference with >>>>>>> ``richcmp`` >>>>>>> is that ``richcmp_not_equal``\n assumes that its arguments are not >>>>>>> equal, which is excluding the case\n where the comparison cannot be >>>>>>> decided so far, without\n knowing the rest of the parameters.\n\n >>>>>>> EXAMPLES::\n\n sage: from sage.structure.richcmp import >>>>>>> (richcmp_not_equal,\n ....: op_EQ, op_NE, op_LT, op_LE, >>>>>>> op_GT, >>>>>>> op_GE)\n sage: for op in (op_LT, op_LE, op_EQ, op_NE, op_GT, >>>>>>> op_GE):\n ....: print(richcmp_not_equal(3, 4, op))\n >>>>>>> True\n True\n False\n True\n False\n >>>>>>> False\n sage: for op in (op_LT, op_LE, op_EQ, op_NE, >>>>>>> op_GT, >>>>>>> op_GE):\n ....: print(richcmp_not_equal(5, 4, op))\n >>>>>>> False\n False\n False\n True\n >>>>>>> True\n >>>>>>> True\n "; [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] build/cythonized/sage/tests/stl_vector.cpp:4597:18: >>>>>>> warning: >>>>>>> ‘PyObject* __pyx_pw_4sage_9structure_7richcmp_1richcmp(PyObject*, >>>>>>> PyObject*, PyObject*)’ defined but not used [-Wunused-function] >>>>>>> [sagelib-9.2] 4597 | static PyObject >>>>>>> *__pyx_pw_4sage_9structure_7richcmp_1richcmp(PyObject *__pyx_self, >>>>>>> PyObject >>>>>>> *__pyx_args, PyObject *__pyx_kwds) { [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp:4596:13: warning: >>>>>>> ‘__pyx_doc_4sage_9structure_7richcmp_richcmp’ defined but not used >>>>>>> [-Wunused-variable] [sagelib-9.2] 4596 | static char >>>>>>> __pyx_doc_4sage_9structure_7richcmp_richcmp[] = "richcmp(x, y, int >>>>>>> op)\nFile: sage/structure/richcmp.pxd (starting at line 6)\n\n >>>>>>> Return >>>>>>> the result of the rich comparison of ``x`` and ``y`` with\n operator >>>>>>> ``op``.\n\n INPUT:\n\n - ``x``, ``y`` -- arbitrary Python >>>>>>> objects\n\n >>>>>>> - ``op`` -- comparison operator (one of ``op_LT`, ``op_LE``,\n >>>>>>> ``op_EQ``, ``op_NE``, ``op_GT``, ``op_GE``).\n\n EXAMPLES::\n\n >>>>>>> sage: from sage.structure.richcmp import *\n sage: >>>>>>> richcmp(3, >>>>>>> 4, op_LT)\n True\n sage: richcmp(x, x^2, op_EQ)\n >>>>>>> x == >>>>>>> x^2\n\n The two examples above are completely equivalent to ``3 < >>>>>>> 4``\n >>>>>>> and ``x == x^2``. For this reason, it only makes sense in practice\n >>>>>>> to call ``richcmp`` with a non-constant value for ``op``.\n\n We >>>>>>> can >>>>>>> write a custom ``Element`` class which shows a more\n realistic >>>>>>> example >>>>>>> of how to use this::\n\n sage: from sage.structure.element >>>>>>> import >>>>>>> Element\n sage: class MyElement(Element):\n ....: def >>>>>>> __init__(self, parent, value):\n ....: >>>>>>> Element.__init__(self, parent)\n ....: self.v = >>>>>>> value\n ....: def _richcmp_(self, other, op):\n ....: >>>>>>> return richcmp(self.v, other.v, op)\n sage: P = >>>>>>> Parent()\n >>>>>>> sage: x = MyElement(P, 3)\n sage: y = MyElement(P, 3)\n >>>>>>> sage: x < y\n False\n sage: x == y\n True\n >>>>>>> sage: x > y\n False\n "; [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp:4383:18: warning: ‘PyObject* >>>>>>> __pyx_pw_4sage_9structure_7element_3have_same_parent(PyObject*, >>>>>>> PyObject*, >>>>>>> PyObject*)’ defined but not used [-Wunused-function] [sagelib-9.2] >>>>>>> 4383 | >>>>>>> static PyObject >>>>>>> *__pyx_pw_4sage_9structure_7element_3have_same_parent(PyObject >>>>>>> *__pyx_self, >>>>>>> PyObject *__pyx_args, PyObject *__pyx_kwds) { [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] build/cythonized/sage/tests/stl_vector.cpp:4382:13: >>>>>>> warning: >>>>>>> ‘__pyx_doc_4sage_9structure_7element_2have_same_parent’ defined but not >>>>>>> used [-Wunused-variable] [sagelib-9.2] 4382 | static char >>>>>>> __pyx_doc_4sage_9structure_7element_2have_same_parent[] = >>>>>>> "have_same_parent(left, right) -> bool\nFile: >>>>>>> sage/structure/element.pxd >>>>>>> (starting at line 111)\n\n Return ``True`` if and only if ``left`` >>>>>>> and >>>>>>> ``right`` have the\n same parent.\n\n .. WARNING::\n\n >>>>>>> This >>>>>>> function assumes that at least one of the arguments is a\n Sage >>>>>>> :class:`Element`. When in doubt, use the slower\n ``parent(left) >>>>>>> is >>>>>>> parent(right)`` instead.\n\n EXAMPLES::\n\n sage: from >>>>>>> sage.structure.element import have_same_parent\n sage: >>>>>>> have_same_parent(1, 3)\n True\n sage: have_same_parent(1, >>>>>>> 1/2)\n False\n sage: have_same_parent(gap(1), gap(1/2))\n >>>>>>> True\n\n These have different types but the same parent::\n\n >>>>>>> sage: a = RLF(2)\n sage: b = exp(a)\n sage: >>>>>>> type(a)\n >>>>>>> <... 'sage.rings.real_lazy.LazyWrapper'>\n sage: >>>>>>> type(b)\n >>>>>>> <... 'sage.rings.real_lazy.LazyNamedUnop'>\n sage: >>>>>>> have_same_parent(a, b)\n True\n "; [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] build/cythonized/sage/tests/stl_vector.cpp:4038:18: >>>>>>> warning: >>>>>>> ‘PyObject* __pyx_pw_4sage_9structure_7element_1parent(PyObject*, >>>>>>> PyObject*)’ defined but not used [-Wunused-function] [sagelib-9.2] >>>>>>> 4038 | >>>>>>> static PyObject *__pyx_pw_4sage_9structure_7element_1parent(PyObject >>>>>>> *__pyx_self, PyObject *__pyx_v_x) { [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>>>>> [sagelib-9.2] >>>>>>> build/cythonized/sage/tests/stl_vector.cpp:4037:13: warning: >>>>>>> ‘__pyx_doc_4sage_9structure_7element_parent’ defined but not used >>>>>>> [-Wunused-variable] [sagelib-9.2] 4037 | static char >>>>>>> __pyx_doc_4sage_9structure_7element_parent[] = "parent(x)\nFile: >>>>>>> sage/structure/element.pxd (starting at line 6)\n\n Return the >>>>>>> parent of >>>>>>> the element ``x``.\n\n Usually, this means the mathematical object >>>>>>> of >>>>>>> which ``x`` is an\n element.\n\n INPUT:\n\n - ``x`` -- an >>>>>>> element\n\n OUTPUT:\n\n - If ``x`` is a Sage :class:`Element`, >>>>>>> return >>>>>>> ``x.parent()``.\n\n - Otherwise, return ``type(x)``.\n\n .. >>>>>>> SEEALSO::\n\n `Parents, Conversion and Coercion >>>>>>> <http://doc.sagemath.org/html/en/tutorial/tour_coercion.html >>>>>>> <http://doc.sagemath.org/html/en/tutorial/tour_coercion.html>>`_\n >>>>>>> Section in the Sage Tutorial\n\n EXAMPLES::\n\n sage: >>>>>>> a = >>>>>>> 42\n sage: parent(a)\n Integer Ring\n sage: b = >>>>>>> 42/1\n >>>>>>> sage: parent(b)\n Rational Field\n sage: c = >>>>>>> 42.0\n >>>>>>> sage: parent(c)\n Real Field with 53 bits of >>>>>>> precision\n\n >>>>>>> Some more complicated examples::\n\n sage: x = >>>>>>> Partition([3,2,1,1,1])\n sage: parent(x)\n Partitions\n >>>>>>> sage: v = vector(RDF, [1,2,3])\n sage: parent(v)\n >>>>>>> Vector space of dimension 3 over Real Double Field\n\n The >>>>>>> following are not considered to be elements, so the type is\n >>>>>>> returned::\n\n sage: d = int(42) # Python int\n sage: >>>>>>> parent(d)\n <... 'int'>\n sage: L = list(range(10))\n >>>>>>> >>>>>>> sage: parent(L)\n <... 'list'>\n "; [sagelib-9.2] | >>>>>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [sagelib-9.2] >>>>>>> g++ >>>>>>> -pthread -shared -Wl,-rpath-link,/home/tobias/bin/sage-9.2/local/lib >>>>>>> -L/home/tobias/bin/sage-9.2/local/lib >>>>>>> -Wl,-rpath,/home/tobias/bin/sage-9.2/local/lib >>>>>>> build/temp.linux-x86_64-3.8/build/cythonized/sage/tests/stl_vector.o >>>>>>> -L/usr/lib64 -lgmp -o >>>>>>> build/lib.linux-x86_64-3.8/sage/tests/stl_vector.cpython-38-x86_64-linux-gnu.so >>>>>>> >>>>>>> <http://stl_vector.cpython-38-x86_64-linux-gnu.so> -lpari [sagelib-9.2] >>>>>>> error: command 'gcc' failed with exit status 1 [sagelib-9.2] >>>>>>> [sagelib-9.2] >>>>>>> real 45m29,250s [sagelib-9.2] user 43m28,680s [sagelib-9.2] >>>>>>> sys >>>>>>> 1m14,383s make[4]: *** [Makefile:2163: sagelib-no-deps] Fehler 1 >>>>>>> make[3]: *** [Makefile:2163: >>>>>>> /home/tobias/bin/sage-9.2/local/var/lib/sage/installed/sagelib-9.2] >>>>>>> Fehler >>>>>>> 2 make[2]: *** [Makefile:1766: all-start] Fehler 2 make[2]: Verzeichnis >>>>>>> „/home/tobias/bin/sage-9.2/build/make“ wird verlassen real >>>>>>> 45m37,045s >>>>>>> user 43m33,440s sys 1m16,757s >>>>>>> *************************************************************** Error >>>>>>> building Sage. The following package(s) may have failed to build (not >>>>>>> necessarily during this run of 'make all-start'): It is safe to delete >>>>>>> any >>>>>>> log files and build directories, but they contain information that is >>>>>>> helpful for debugging build problems. WARNING: If you now run 'make' >>>>>>> again, >>>>>>> the build directory of the same version of the package will, by >>>>>>> default, be >>>>>>> deleted. Set the environment variable SAGE_KEEP_BUILT_SPKGS=yes to >>>>>>> prevent >>>>>>> this. make[1]: *** [Makefile:33: all-start] Fehler 1 make[1]: >>>>>>> Verzeichnis >>>>>>> „/home/tobias/bin/sage-9.2“ wird verlassen make: *** [Makefile:13: all] >>>>>>> Fehler 2* >>>>>>> >>>>>> -- You received this message because you are subscribed to the Google Groups "sage-support" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-support+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-support/9e1c9cdc-d787-42b1-b1b3-428b25619ab3n%40googlegroups.com.