On Wednesday, March 20, 2019 at 9:17:37 AM UTC-7, Dima Pasechnik wrote: > > so you need to rebuild sagelib with new libvpx. > In general after a major system update it's best to "make distclean" > and rebuild from scratch. > > Or you can touch pyx files which depend upon libvpx and run make, but > if there were mo updates it might be in vain. >
Maybe "./sage --ba-force" would work, if you don't want to do "make distclean". > On Wed, Mar 20, 2019 at 4:07 PM <david....@gmail.com <javascript:>> > wrote: > > > > I have a crash when starting sage :( > > > > Roughly it says "ImportError: libvpx.so.4: cannot open shared object > file: No such file or directory" > > See the content of .sage/ipython-5.0.0/Sage_crash_report.txt below > > > > This is on a computer freshly updated to fedora 29, where we have > libvpx.so.5 > > > > [root@nicoati /]# locate libvpx | grep so > > > /local/cache-dnf/so-fedora-e60da87e1e38600d/packages/libvpx-1.7.0-7.fc29.x86_64.rpm > > > > > /local/cache-dnf/so-fedora-e60da87e1e38600d/packages/libvpx-devel-1.7.0-7.fc29.x86_64.rpm > > > > /usr/lib64/libvpx.so > > /usr/lib64/libvpx.so.5 > > /usr/lib64/libvpx.so.5.0 > > /usr/lib64/libvpx.so.5.0.0 > > /usr/lib64/vlc/plugins/codec/libvpx_plugin.so > > /usr/share/doc/libvpx-devel/html/vp8_8h_source.html > > /usr/share/doc/libvpx-devel/html/vp8cx_8h_source.html > > /usr/share/doc/libvpx-devel/html/vp8dx_8h_source.html > > /usr/share/doc/libvpx-devel/html/vpx__codec_8h_source.html > > /usr/share/doc/libvpx-devel/html/vpx__decoder_8h_source.html > > /usr/share/doc/libvpx-devel/html/vpx__encoder_8h_source.html > > /usr/share/doc/libvpx-devel/html/vpx__frame__buffer_8h_source.html > > /usr/share/doc/libvpx-devel/html/vpx__image_8h_source.html > > > /var/cache/dnf/so-fedora-e60da87e1e38600d/packages/libvpx-1.7.0-7.fc29.x86_64.rpm > > > > > /var/cache/dnf/so-fedora-e60da87e1e38600d/packages/libvpx-devel-1.7.0-7.fc29.x86_64.rpm > > > > > > > > What can I do ? > > > > Thanks, > > David. > > > > > > > > > *************************************************************************** > > > > IPython post-mortem report > > > > {'commit_hash': u'033ab93c7', > > 'commit_source': 'installation', > > 'default_encoding': 'UTF-8', > > 'ipython_path': > '/home/dcoudert/sage/local/lib/python2.7/site-packages/IPython', > > 'ipython_version': '5.8.0', > > 'os_name': 'posix', > > 'platform': > 'Linux-4.20.15-200.fc29.x86_64-x86_64-with-fedora-29-Twenty_Nine', > > 'sys_executable': '/home/dcoudert/sage/local/bin/python2', > > 'sys_platform': 'linux2', > > 'sys_version': '2.7.15 (default, Mar 18 2019, 17:56:14) \n[GCC 7.3.1 > 20180712 (Red Hat 7.3.1-6)]'} > > > > > *************************************************************************** > > > > > > > > > *************************************************************************** > > > > Crash traceback: > > > > > --------------------------------------------------------------------------- > > > --------------------------------------------------------------------------- > > ImportError Python 2.7.15: > /home/dcoudert/sage/local/bin/python2 > > Wed Mar 20 14:13:18 > 2019 > > A problem occurred executing Python code. Here is the sequence of > function > > calls leading up to the error, with the most recent (innermost) call > last. > > /home/dcoudert/sage/src/bin/sage-ipython in <module>() > > 1 #!/usr/bin/env sage-python23 > > 2 # -*- coding: utf-8 -*- > > 3 """ > > 4 Sage IPython startup script. > > 5 """ > > 6 > > 7 # Display startup banner. Do this before anything else to give > the user > > 8 # early feedback that Sage is starting. > > 9 from sage.misc.banner import banner > > 10 banner() > > 11 > > 12 from sage.repl.interpreter import SageTerminalApp > > 13 > > 14 app = SageTerminalApp.instance() > > ---> 15 app.initialize() > > global app.initialize = <bound method SageTerminalApp.initialize > of <sage.repl.interpreter.SageTerminalApp object at 0x7f82d3560a50>> > > 16 app.start() > > > > <decorator-gen-110> in > initialize(self=<sage.repl.interpreter.SageTerminalApp object>, argv=None) > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/traitlets/config/application.pyc > > in catch_config_error(method=<function initialize>, > app=<sage.repl.interpreter.SageTerminalApp object>, *args=(None,), > **kwargs={}) > > 72 TRAITLETS_APPLICATION_RAISE_CONFIG_FILE_ERROR = False > > 73 else: > > 74 raise ValueError("Unsupported value for environment variable: > 'TRAITLETS_APPLICATION_RAISE_CONFIG_FILE_ERROR' is set to '%s' which is > none of {'0', '1', 'false', 'true', ''}."% _envvar ) > > 75 > > 76 > > 77 @decorator > > 78 def catch_config_error(method, app, *args, **kwargs): > > 79 """Method decorator for catching invalid config > (Trait/ArgumentErrors) during init. > > 80 > > 81 On a TraitError (generally caused by bad config), this will > print the trait's > > 82 message, and exit the app. > > 83 > > 84 For use on init methods, to prevent invoking excepthook on > invalid input. > > 85 """ > > 86 try: > > ---> 87 return method(app, *args, **kwargs) > > method = <function initialize at 0x7f82ce3c1c80> > > app = <sage.repl.interpreter.SageTerminalApp object at > 0x7f82d3560a50> > > args = (None,) > > kwargs = {} > > 88 except (TraitError, ArgumentError) as e: > > 89 app.print_help() > > 90 app.log.fatal("Bad config encountered during > initialization:") > > 91 app.log.fatal(str(e)) > > 92 app.log.debug("Config at the time: %s", app.config) > > 93 app.exit(1) > > 94 > > 95 > > 96 class ApplicationError(Exception): > > 97 pass > > 98 > > 99 > > 100 class LevelFormatter(logging.Formatter): > > 101 """Formatter with additional `highlevel` record > > 102 > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/IPython/terminal/ipapp.pyc > > in initialize(self=<sage.repl.interpreter.SageTerminalApp object>, > argv=None) > > 301 > > 302 return super(TerminalIPythonApp, > self).parse_command_line(argv) > > 303 > > 304 @catch_config_error > > 305 def initialize(self, argv=None): > > 306 """Do actions after construct, but before starting the > app.""" > > 307 super(TerminalIPythonApp, self).initialize(argv) > > 308 if self.subapp is not None: > > 309 # don't bother initializing further, starting subapp > > 310 return > > 311 # print self.extra_args > > 312 if self.extra_args and not self.something_to_run: > > 313 self.file_to_run = self.extra_args[0] > > 314 self.init_path() > > 315 # create the shell > > --> 316 self.init_shell() > > self.init_shell = <bound method SageTerminalApp.init_shell of > <sage.repl.interpreter.SageTerminalApp object at 0x7f82d3560a50>> > > 317 # and draw the banner > > 318 self.init_banner() > > 319 # Now a variety of things that happen after the banner is > printed. > > 320 self.init_gui_pylab() > > 321 self.init_extensions() > > 322 self.init_code() > > 323 > > 324 def init_shell(self): > > 325 """initialize the InteractiveShell instance""" > > 326 # Create an InteractiveShell instance. > > 327 # shell.display_banner should always be False for the > terminal > > 328 # based app, because we call shell.show_banner() by hand > below > > 329 # so the banner shows *before* all extension loading > stuff. > > 330 self.shell = > self.interactive_shell_class.instance(parent=self, > > 331 profile_dir=self.profile_dir, > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/repl/interpreter.pyc > > in init_shell(self=<sage.repl.interpreter.SageTerminalApp object>) > > 743 self.shell.has_sage_extensions = SAGE_EXTENSION in > self.extensions > > 744 > > 745 # Load the %lprun extension if available > > 746 try: > > 747 import line_profiler > > 748 except ImportError: > > 749 pass > > 750 else: > > 751 self.extensions.append('line_profiler') > > 752 > > 753 if self.shell.has_sage_extensions: > > 754 self.extensions.remove(SAGE_EXTENSION) > > 755 > > 756 # load sage extension here to get a crash if > > 757 # something is wrong with the sage library > > --> 758 > self.shell.extension_manager.load_extension(SAGE_EXTENSION) > > self.shell.extension_manager.load_extension = <bound method > ExtensionManager.load_extension of > <IPython.core.extensions.ExtensionManager object at 0x7f82c404bb10>> > > global SAGE_EXTENSION = 'sage' > > 759 > > 760 > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/IPython/core/extensions.pyc > > in load_extension(self=<IPython.core.extensions.ExtensionManager object>, > module_str='sage') > > 70 > > 71 Returns the string "already loaded" if the extension is > already loaded, > > 72 "no load function" if the module doesn't have a > load_ipython_extension > > 73 function, or None if it succeeded. > > 74 """ > > 75 if module_str in self.loaded: > > 76 return "already loaded" > > 77 > > 78 from IPython.utils.syspathcontext import > prepended_to_syspath > > 79 > > 80 with self.shell.builtin_trap: > > 81 if module_str not in sys.modules: > > 82 with > prepended_to_syspath(self.ipython_extension_dir): > > 83 __import__(module_str) > > 84 mod = sys.modules[module_str] > > ---> 85 if self._call_load_ipython_extension(mod): > > self._call_load_ipython_extension = <bound method > ExtensionManager._call_load_ipython_extension of > <IPython.core.extensions.ExtensionManager object at 0x7f82c404bb10>> > > mod = <module 'sage' from > '/home/dcoudert/sage/local/lib/python2.7/site-packages/sage/__init__.pyc'> > > 86 self.loaded.add(module_str) > > 87 else: > > 88 return "no load function" > > 89 > > 90 def unload_extension(self, module_str): > > 91 """Unload an IPython extension by its module name. > > 92 > > 93 This function looks up the extension's name in > ``sys.modules`` and > > 94 simply calls ``mod.unload_ipython_extension(self)``. > > 95 > > 96 Returns the string "no unload function" if the extension > doesn't define > > 97 a function to unload itself, "not loaded" if the > extension isn't loaded, > > 98 otherwise None. > > 99 """ > > 100 if module_str not in self.loaded: > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/IPython/core/extensions.pyc > > in > _call_load_ipython_extension(self=<IPython.core.extensions.ExtensionManager > object>, mod=<module 'sage' from > '/home/dcoudert/sage/local/lib/python2.7/site-packages/sage/__init__.pyc'>) > > 117 """ > > 118 from IPython.utils.syspathcontext import > prepended_to_syspath > > 119 > > 120 if (module_str in self.loaded) and (module_str in > sys.modules): > > 121 self.unload_extension(module_str) > > 122 mod = sys.modules[module_str] > > 123 with > prepended_to_syspath(self.ipython_extension_dir): > > 124 reload(mod) > > 125 if self._call_load_ipython_extension(mod): > > 126 self.loaded.add(module_str) > > 127 else: > > 128 self.load_extension(module_str) > > 129 > > 130 def _call_load_ipython_extension(self, mod): > > 131 if hasattr(mod, 'load_ipython_extension'): > > --> 132 mod.load_ipython_extension(self.shell) > > mod.load_ipython_extension = <function load_ipython_extension at > 0x7f82e0ded8c0> > > self.shell = <sage.repl.interpreter.SageTerminalInteractiveShell > object at 0x7f82ce364990> > > 133 return True > > 134 > > 135 def _call_unload_ipython_extension(self, mod): > > 136 if hasattr(mod, 'unload_ipython_extension'): > > 137 mod.unload_ipython_extension(self.shell) > > 138 return True > > 139 > > 140 def install_extension(self, url, filename=None): > > 141 """Download and install an IPython extension. > > 142 > > 143 If filename is given, the file will be so named (inside > the extension > > 144 directory). Otherwise, the name from the URL will be > used. The file must > > 145 have a .py or .zip extension; otherwise, a ValueError > will be raised. > > 146 > > 147 Returns the full path to the installed file. > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/__init__.pyc > in > load_ipython_extension(*args=(<sage.repl.interpreter.SageTerminalInteractiveShell > > object>,)) > > 1 __all__ = ['all'] > > 2 > > 3 # Set sage.__version__ to the current version number. This is > analogous > > 4 # to many other Python packages. > > 5 from sage.version import version as __version__ > > 6 > > 7 # Make sure that the correct zlib library is loaded. This is > needed > > 8 # to prevent the system zlib to be loaded instead of the Sage > one. > > 9 # See https://trac.sagemath.org/ticket/23122 > > 10 import zlib > > 11 > > 12 # IPython calls this when starting up > > 13 def load_ipython_extension(*args): > > 14 import sage.repl.ipython_extension > > ---> 15 sage.repl.ipython_extension.load_ipython_extension(*args) > > sage.repl.ipython_extension.load_ipython_extension = <function > load_ipython_extension at 0x7f82bf775e60> > > args = (<sage.repl.interpreter.SageTerminalInteractiveShell > object at 0x7f82ce364990>,) > > 16 > > 17 > > 18 # Monkey-patch inspect.isfunction() to support Cython functions. > > 19 def isfunction(obj): > > 20 """ > > 21 Check whether something is a function. > > 22 > > 23 We assume that anything which has a genuine ``__code__`` > > 24 attribute (not using ``__getattr__`` overrides) is a > function. > > 25 This is meant to support Cython functions. > > 26 > > 27 EXAMPLES:: > > 28 > > 29 sage: from inspect import isfunction > > 30 sage: def f(): pass > > 31 sage: isfunction(f) > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/repl/ipython_extension.pyc > > in wrapper(*args=(<sage.repl.interpreter.SageTerminalInteractiveShell > object>,), **kwargs={}) > > 547 ....: if work: > > 548 ....: return 'foo worked' > > 549 ....: raise RuntimeError("foo didn't work") > > 550 sage: foo(False) > > 551 Traceback (most recent call last): > > 552 ... > > 553 RuntimeError: foo didn't work > > 554 sage: foo(True) > > 555 'foo worked' > > 556 sage: foo(False) > > 557 sage: foo(True) > > 558 """ > > 559 @wraps(func) > > 560 def wrapper(*args, **kwargs): > > 561 if not wrapper.has_run: > > --> 562 result = func(*args, **kwargs) > > result = undefined > > global func = undefined > > args = (<sage.repl.interpreter.SageTerminalInteractiveShell > object at 0x7f82ce364990>,) > > kwargs = {} > > 563 wrapper.has_run = True > > 564 return result > > 565 wrapper.has_run = False > > 566 return wrapper > > 567 > > 568 > > 569 @run_once > > 570 def load_ipython_extension(ip): > > 571 """ > > 572 Load the extension in IPython. > > 573 """ > > 574 # this modifies ip > > 575 SageCustomizations(shell=ip) > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/repl/ipython_extension.pyc > > in > load_ipython_extension(ip=<sage.repl.interpreter.SageTerminalInteractiveShell > object>) > > 560 def wrapper(*args, **kwargs): > > 561 if not wrapper.has_run: > > 562 result = func(*args, **kwargs) > > 563 wrapper.has_run = True > > 564 return result > > 565 wrapper.has_run = False > > 566 return wrapper > > 567 > > 568 > > 569 @run_once > > 570 def load_ipython_extension(ip): > > 571 """ > > 572 Load the extension in IPython. > > 573 """ > > 574 # this modifies ip > > --> 575 SageCustomizations(shell=ip) > > global SageCustomizations = <class > 'sage.repl.ipython_extension.SageCustomizations'> > > global shell = undefined > > ip = <sage.repl.interpreter.SageTerminalInteractiveShell object > at 0x7f82ce364990> > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/repl/ipython_extension.pyc > > in __init__(self=<sage.repl.ipython_extension.SageCustomizations object>, > shell=<sage.repl.interpreter.SageTerminalInteractiveShell object>) > > 418 def __init__(self, shell=None): > > 419 """ > > 420 Initialize the Sage plugin. > > 421 """ > > 422 self.shell = shell > > 423 > > 424 self.auto_magics = SageMagics(shell) > > 425 self.shell.register_magics(self.auto_magics) > > 426 > > 427 import sage.misc.edit_module as edit_module > > 428 self.shell.set_hook('editor', edit_module.edit_devel) > > 429 > > 430 self.init_inspector() > > 431 self.init_line_transforms() > > 432 > > --> 433 import sage.all # until sage's import hell is fixed > > sage.all = undefined > > 434 > > 435 self.shell.verbose_quit = True > > 436 self.set_quit_hook() > > 437 > > 438 self.register_interface_magics() > > 439 > > 440 if SAGE_IMPORTALL == 'yes': > > 441 self.init_environment() > > 442 > > 443 def register_interface_magics(self): > > 444 """ > > 445 Register magics for each of the Sage interfaces > > 446 """ > > 447 from sage.repl.interface_magic import InterfaceMagic > > 448 InterfaceMagic.register_all(self.shell) > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/all.py in > <module>() > > 81 > > 82 import sage.misc.lazy_import > > 83 from sage.misc.all import * # takes a while > > 84 from sage.typeset.all import * > > 85 from sage.repl.all import * > > 86 > > 87 from sage.misc.sh import sh > > 88 > > 89 from sage.libs.all import * > > 90 from sage.data_structures.all import * > > 91 from sage.doctest.all import * > > 92 > > 93 from sage.structure.all import * > > 94 from sage.rings.all import * > > 95 from sage.arith.all import * > > ---> 96 from sage.matrix.all import * > > global sage.matrix.all = undefined > > 97 > > 98 from sage.symbolic.all import * > > 99 from sage.modules.all import * > > 100 from sage.monoids.all import * > > 101 from sage.algebras.all import * > > 102 from sage.modular.all import * > > 103 from sage.sat.all import * > > 104 from sage.schemes.all import * > > 105 from sage.graphs.all import * > > 106 from sage.groups.all import * > > 107 from sage.arith.power import generic_power as power > > 108 from sage.databases.all import * > > 109 from sage.categories.all import * > > 110 from sage.sets.all import * > > 111 from sage.probability.all import * > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/matrix/__init__.py > in <module>() > > 1 # Resolve a cyclic import > > ----> 2 import sage.matrix.args > > global sage.matrix.args = undefined > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/matrix/args.pyx > in init sage.matrix.args (build/cythonized/sage/matrix/args.c:20075)() > > 10 # This program is free software: you can redistribute it and/or > modify > > 11 # it under the terms of the GNU General Public License as > published by > > 12 # the Free Software Foundation, either version 2 of the License, > or > > 13 # (at your option) any later version. > > 14 # http://www.gnu.org/licenses/ > > 15 > #***************************************************************************** > > > > 16 > > 17 from __future__ import absolute_import, generator_stop > > 18 > > 19 cimport cython > > 20 from cpython.sequence cimport PySequence_Fast > > 21 from cysignals.signals cimport sig_check > > 22 from cypari2.gen cimport Gen > > 23 from cypari2.types cimport typ, t_MAT, t_VEC, t_COL, t_VECSMALL, > t_LIST, t_STR, t_CLOSURE > > 24 > > ---> 25 from .matrix_space import MatrixSpace > > global matrix_space = undefined > > global MatrixSpace = undefined > > 26 from sage.rings.all import ZZ, RDF, CDF > > 27 from sage.structure.coerce cimport (coercion_model, > > 28 is_numpy_type, py_scalar_parent) > > 29 from sage.structure.element cimport Element, RingElement > > 30 from sage.arith.long cimport pyobject_to_long > > 31 from sage.misc.misc_c import sized_iter > > 32 from sage.categories import monoids > > 33 > > 34 > > 35 CommutativeMonoids = monoids.Monoids().Commutative() > > 36 > > 37 > > 38 cdef inline bint element_is_scalar(Element x): > > 39 """ > > 40 Should this element be considered a scalar (as opposed to a > vector)? > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/matrix/matrix_space.pyc > > in <module>() > > 31 # (at your option) any later version. > > 32 # https://www.gnu.org/licenses/ > > 33 # > **************************************************************************** > > > 34 from __future__ import print_function, absolute_import > > 35 from six.moves import range > > 36 from six import iteritems, integer_types > > 37 > > 38 # System imports > > 39 import sys > > 40 import operator > > 41 > > 42 # Sage matrix imports > > 43 from . import matrix_generic_dense > > 44 from . import matrix_generic_sparse > > 45 > > ---> 46 from . import matrix_modn_sparse > > global matrix_modn_sparse = undefined > > 47 > > 48 from . import matrix_mod2_dense > > 49 from . import matrix_gf2e_dense > > 50 > > 51 from . import matrix_integer_dense > > 52 from . import matrix_integer_sparse > > 53 > > 54 from . import matrix_rational_dense > > 55 from . import matrix_rational_sparse > > 56 > > 57 from . import matrix_polynomial_dense > > 58 from . import matrix_mpolynomial_dense > > 59 > > 60 # Sage imports > > 61 from sage.misc.superseded import deprecation > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/matrix/matrix_integer_sparse.pxd > > in init sage.matrix.matrix_modn_sparse > (build/cythonized/sage/matrix/matrix_modn_sparse.cpp:16298)() > > 1 from sage.modules.vector_integer_sparse cimport mpz_vector > > 2 from sage.ext.mod_int cimport mod_int > > 3 from .matrix_sparse cimport Matrix_sparse > > 4 > > ----> 5 cdef class Matrix_integer_sparse(Matrix_sparse): > > global cdef = undefined > > global Matrix_integer_sparse = undefined > > global Matrix_sparse = undefined > > 6 cdef mpz_vector* _matrix > > 7 > > 8 cdef _mod_int_c(self, mod_int p) > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/matrix/matrix_integer_dense.pxd > > in init sage.matrix.matrix_integer_sparse > (build/cythonized/sage/matrix/matrix_integer_sparse.cpp:15824)() > > 1 from sage.libs.gmp.types cimport * > > 2 from sage.libs.flint.types cimport fmpz_mat_t > > 3 > > 4 from .matrix_dense cimport Matrix_dense > > 5 from sage.rings.integer cimport Integer > > 6 from sage.ext.mod_int cimport * > > 7 > > 8 ctypedef long* GEN > > 9 > > ---> 10 cdef class Matrix_integer_dense(Matrix_dense): > > global cdef = undefined > > global Matrix_integer_dense = undefined > > global Matrix_dense = undefined > > 11 cdef fmpz_mat_t _matrix > > 12 cdef object _pivots > > 13 cdef int mpz_height(self, mpz_t height) except -1 > > 14 cdef _mod_int_c(self, mod_int modulus) > > 15 cdef _mod_two(self) > > 16 cdef _pickle_version0(self) > > 17 cdef _unpickle_version0(self, data) > > 18 cpdef _export_as_string(self, int base=?) > > 19 cdef void set_unsafe_mpz(self, Py_ssize_t i, Py_ssize_t j, > const mpz_t value) > > 20 cdef void set_unsafe_si(self, Py_ssize_t i, Py_ssize_t j, > long value) > > 21 cdef void set_unsafe_double(self, Py_ssize_t i, Py_ssize_t j, > double value) > > 22 cdef inline void get_unsafe_mpz(self, Py_ssize_t i, > Py_ssize_t j, mpz_t value) > > 23 cdef inline double get_unsafe_double(self, Py_ssize_t i, > Py_ssize_t j) > > 24 > > 25 # HNF Modn > > 26 cdef int _hnf_modn(Matrix_integer_dense self, > Matrix_integer_dense res, > > 27 unsigned int det) except -1 > > 28 cdef int* _hnf_modn_impl(Matrix_integer_dense self, unsigned > int det, > > 29 Py_ssize_t nrows, Py_ssize_t ncols) except NULL > > 30 > > 31 cdef Matrix_integer_dense _new(self, Py_ssize_t nrows, > Py_ssize_t ncols) > > > > > /home/dcoudert/sage/local/lib/python2.7/site-packages/sage/matrix/matrix_mod2_dense.pxd > > in init sage.matrix.matrix_integer_dense > (build/cythonized/sage/matrix/matrix_integer_dense.c:55342)() > > 1 from .matrix_dense cimport Matrix_dense > > 2 from sage.libs.m4ri cimport * > > 3 > > ----> 4 cdef class Matrix_mod2_dense(Matrix_dense): > > global cdef = undefined > > global Matrix_mod2_dense = undefined > > global Matrix_dense = undefined > > 5 cdef mzd_t *_entries > > 6 cdef object _one > > 7 cdef object _zero > > 8 > > 9 cdef set_unsafe_int(self, Py_ssize_t i, Py_ssize_t j, int > value) > > 10 > > 11 cpdef Matrix_mod2_dense _multiply_m4rm(Matrix_mod2_dense > self, Matrix_mod2_dense right, int k) > > 12 cpdef Matrix_mod2_dense _multiply_strassen(Matrix_mod2_dense > self, Matrix_mod2_dense right, int cutoff) > > 13 > > 14 # For conversion to other systems > > 15 cpdef _export_as_string(self) > > > > ImportError: libvpx.so.4: cannot open shared object file: No such file > or directory > > > > > *************************************************************************** > > > > History of session input: > > *** Last line of input (may not be in above history): > > > > > > > > > > > > > > Le mercredi 20 mars 2019 00:03:34 UTC+1, Volker Braun a écrit : > >> > >> As always, you can get the latest beta version from the "develop" git > branch. Alternatively, the self-contained source tarball is at > http://www.sagemath.org/download-latest.html > >> > > -- > > You received this message because you are subscribed to the Google > Groups "sage-release" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to sage-release...@googlegroups.com <javascript:>. > > To post to this group, send email to sage-r...@googlegroups.com > <javascript:>. > > Visit this group at https://groups.google.com/group/sage-release. > > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "sage-release" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-release+unsubscr...@googlegroups.com. To post to this group, send email to sage-release@googlegroups.com. Visit this group at https://groups.google.com/group/sage-release. For more options, visit https://groups.google.com/d/optout.