Hello,
I have sage7.2 Installations under 32 Bit LinuxMint 17.3 Mate-Edition and
one under 64 Bit LinuxMint 17.3 Cinnamon.
I have no problems with the 32-Bit installation. But for the 64-Bit
Installation I always get the crash I'm sending along.
The crash does occor only if I call sage as normal user. Typing "sudo sage"
does work without crash.
What did I make wrong on the Installation?
Best regard
Sebastian Oehms
--
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 [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.
***************************************************************************
IPython post-mortem report
{'commit_hash': u'f76401f',
'commit_source': 'installation',
'default_encoding': 'UTF-8',
'ipython_path': '/opt/SageMath/local/lib/python2.7/site-packages/IPython',
'ipython_version': '4.1.2',
'os_name': 'posix',
'platform': 'Linux-3.19.0-32-generic-x86_64-with-debian-jessie-sid',
'sys_executable': '/opt/SageMath/local/bin/python',
'sys_platform': 'linux2',
'sys_version': '2.7.10 (default, May 16 2016, 05:06:16) \n[GCC 4.9.3]'}
***************************************************************************
***************************************************************************
Crash traceback:
---------------------------------------------------------------------------
---------------------------------------------------------------------------
OSError Python 2.7.10: /opt/SageMath/local/bin/python
Sat Jul 9 10:51:34 2016
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.
/opt/SageMath/src/bin/sage-ipython in <module>()
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 """
4 Sage IPython startup script.
5 """
6
7 # Install extra readline commands before IPython initialization
8 from sage.repl.readline_extra_commands import *
9
10 from sage.repl.interpreter import SageTerminalApp
11
12 app = SageTerminalApp.instance()
---> 13 app.initialize()
global app.initialize = <bound method SageTerminalApp.initialize of
<sage.repl.interpreter.SageTerminalApp object at 0x7f7ccf8822d0>>
14 app.start()
<decorator-gen-111> in initialize(self=<sage.repl.interpreter.SageTerminalApp
object>, argv=None)
/opt/SageMath/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={})
59
60
#-----------------------------------------------------------------------------
61 # Application class
62
#-----------------------------------------------------------------------------
63
64 @decorator
65 def catch_config_error(method, app, *args, **kwargs):
66 """Method decorator for catching invalid config
(Trait/ArgumentErrors) during init.
67
68 On a TraitError (generally caused by bad config), this will print
the trait's
69 message, and exit the app.
70
71 For use on init methods, to prevent invoking excepthook on invalid
input.
72 """
73 try:
---> 74 return method(app, *args, **kwargs)
method = <function initialize at 0x7f7cc9a70230>
app = <sage.repl.interpreter.SageTerminalApp object at 0x7f7ccf8822d0>
args = (None,)
kwargs = {}
75 except (TraitError, ArgumentError) as e:
76 app.print_help()
77 app.log.fatal("Bad config encountered during initialization:")
78 app.log.fatal(str(e))
79 app.log.debug("Config at the time: %s", app.config)
80 app.exit(1)
81
82
83 class ApplicationError(Exception):
84 pass
85
86
87 class LevelFormatter(logging.Formatter):
88 """Formatter with additional `highlevel` record
89
/opt/SageMath/local/lib/python2.7/site-packages/IPython/terminal/ipapp.pyc in
initialize(self=<sage.repl.interpreter.SageTerminalApp object>, argv=None)
291
292 return super(TerminalIPythonApp, self).parse_command_line(argv)
293
294 @catch_config_error
295 def initialize(self, argv=None):
296 """Do actions after construct, but before starting the app."""
297 super(TerminalIPythonApp, self).initialize(argv)
298 if self.subapp is not None:
299 # don't bother initializing further, starting subapp
300 return
301 # print self.extra_args
302 if self.extra_args and not self.something_to_run:
303 self.file_to_run = self.extra_args[0]
304 self.init_path()
305 # create the shell
--> 306 self.init_shell()
self.init_shell = <bound method SageTerminalApp.init_shell of
<sage.repl.interpreter.SageTerminalApp object at 0x7f7ccf8822d0>>
307 # and draw the banner
308 self.init_banner()
309 # Now a variety of things that happen after the banner is
printed.
310 self.init_gui_pylab()
311 self.init_extensions()
312 self.init_code()
313
314 def init_shell(self):
315 """initialize the InteractiveShell instance"""
316 # Create an InteractiveShell instance.
317 # shell.display_banner should always be False for the terminal
318 # based app, because we call shell.show_banner() by hand below
319 # so the banner shows *before* all extension loading stuff.
320 self.shell = TerminalInteractiveShell.instance(parent=self,
321 display_banner=False,
profile_dir=self.profile_dir,
/opt/SageMath/local/lib/python2.7/site-packages/sage/repl/interpreter.pyc in
init_shell(self=<sage.repl.interpreter.SageTerminalApp object>)
793 self.shell.has_sage_extensions = SAGE_EXTENSION in
self.extensions
794
795 # Load the %lprun extension if available
796 try:
797 import line_profiler
798 except ImportError:
799 pass
800 else:
801 self.extensions.append('line_profiler')
802
803 if self.shell.has_sage_extensions:
804 self.extensions.remove(SAGE_EXTENSION)
805
806 # load sage extension here to get a crash if
807 # something is wrong with the sage library
--> 808 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 0x7f7cc80528d0>>
global SAGE_EXTENSION = 'sage'
809
810
/opt/SageMath/local/lib/python2.7/site-packages/IPython/core/extensions.pyc in
load_extension(self=<IPython.core.extensions.ExtensionManager object>,
module_str='sage')
71
72 Returns the string "already loaded" if the extension is already
loaded,
73 "no load function" if the module doesn't have a
load_ipython_extension
74 function, or None if it succeeded.
75 """
76 if module_str in self.loaded:
77 return "already loaded"
78
79 from IPython.utils.syspathcontext import prepended_to_syspath
80
81 with self.shell.builtin_trap:
82 if module_str not in sys.modules:
83 with prepended_to_syspath(self.ipython_extension_dir):
84 __import__(module_str)
85 mod = sys.modules[module_str]
---> 86 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 0x7f7cc80528d0>>
mod = <module 'sage' from
'/opt/SageMath/local/lib/python2.7/site-packages/sage/__init__.pyc'>
87 self.loaded.add(module_str)
88 else:
89 return "no load function"
90
91 def unload_extension(self, module_str):
92 """Unload an IPython extension by its module name.
93
94 This function looks up the extension's name in ``sys.modules``
and
95 simply calls ``mod.unload_ipython_extension(self)``.
96
97 Returns the string "no unload function" if the extension
doesn't define
98 a function to unload itself, "not loaded" if the extension
isn't loaded,
99 otherwise None.
100 """
101 if module_str not in self.loaded:
/opt/SageMath/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
'/opt/SageMath/local/lib/python2.7/site-packages/sage/__init__.pyc'>)
118 """
119 from IPython.utils.syspathcontext import prepended_to_syspath
120
121 if (module_str in self.loaded) and (module_str in sys.modules):
122 self.unload_extension(module_str)
123 mod = sys.modules[module_str]
124 with prepended_to_syspath(self.ipython_extension_dir):
125 reload(mod)
126 if self._call_load_ipython_extension(mod):
127 self.loaded.add(module_str)
128 else:
129 self.load_extension(module_str)
130
131 def _call_load_ipython_extension(self, mod):
132 if hasattr(mod, 'load_ipython_extension'):
--> 133 mod.load_ipython_extension(self.shell)
mod.load_ipython_extension = <function load_ipython_extension at
0x7f7ccf87bed8>
self.shell = <sage.repl.interpreter.SageTerminalInteractiveShell object
at 0x7f7cc9a1e9d0>
134 return True
135
136 def _call_unload_ipython_extension(self, mod):
137 if hasattr(mod, 'unload_ipython_extension'):
138 mod.unload_ipython_extension(self.shell)
139 return True
140
141 def install_extension(self, url, filename=None):
142 """Download and install an IPython extension.
143
144 If filename is given, the file will be so named (inside the
extension
145 directory). Otherwise, the name from the URL will be used. The
file must
146 have a .py or .zip extension; otherwise, a ValueError will be
raised.
147
148 Returns the full path to the installed file.
/opt/SageMath/local/lib/python2.7/site-packages/sage/__init__.pyc in
load_ipython_extension(*args=(<sage.repl.interpreter.SageTerminalInteractiveShell
object>,))
1 __all__ = ['all']
2
3 # IPython calls this when starting up
4 def load_ipython_extension(*args):
5 import sage.repl.ipython_extension
----> 6 sage.repl.ipython_extension.load_ipython_extension(*args)
sage.repl.ipython_extension.load_ipython_extension = <function
load_ipython_extension at 0x7f7cc3747578>
args = (<sage.repl.interpreter.SageTerminalInteractiveShell object at
0x7f7cc9a1e9d0>,)
/opt/SageMath/local/lib/python2.7/site-packages/sage/repl/ipython_extension.pyc
in wrapper(*args=(<sage.repl.interpreter.SageTerminalInteractiveShell
object>,), **kwargs={})
427 ....: if work:
428 ....: return 'foo worked'
429 ....: raise RuntimeError("foo didn't work")
430 sage: foo(False)
431 Traceback (most recent call last):
432 ...
433 RuntimeError: foo didn't work
434 sage: foo(True)
435 'foo worked'
436 sage: foo(False)
437 sage: foo(True)
438 """
439 @wraps(func)
440 def wrapper(*args, **kwargs):
441 if not wrapper.has_run:
--> 442 result = func(*args, **kwargs)
result = undefined
global func = undefined
args = (<sage.repl.interpreter.SageTerminalInteractiveShell object at
0x7f7cc9a1e9d0>,)
kwargs = {}
443 wrapper.has_run = True
444 return result
445 wrapper.has_run = False
446 return wrapper
447
448
449 @run_once
450 def load_ipython_extension(ip):
451 """
452 Load the extension in IPython.
453 """
454 # this modifies ip
455 SageCustomizations(shell=ip)
/opt/SageMath/local/lib/python2.7/site-packages/sage/repl/ipython_extension.pyc
in
load_ipython_extension(ip=<sage.repl.interpreter.SageTerminalInteractiveShell
object>)
440 def wrapper(*args, **kwargs):
441 if not wrapper.has_run:
442 result = func(*args, **kwargs)
443 wrapper.has_run = True
444 return result
445 wrapper.has_run = False
446 return wrapper
447
448
449 @run_once
450 def load_ipython_extension(ip):
451 """
452 Load the extension in IPython.
453 """
454 # this modifies ip
--> 455 SageCustomizations(shell=ip)
global SageCustomizations = <class
'sage.repl.ipython_extension.SageCustomizations'>
global shell = undefined
ip = <sage.repl.interpreter.SageTerminalInteractiveShell object at
0x7f7cc9a1e9d0>
/opt/SageMath/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>)
330 """
331 self.shell = shell
332
333 self.auto_magics = SageMagics(shell)
334 self.shell.register_magics(self.auto_magics)
335
336 import sage.misc.edit_module as edit_module
337 self.shell.set_hook('editor', edit_module.edit_devel)
338
339 self.init_inspector()
340 self.init_line_transforms()
341
342 import inputhook
343 inputhook.install()
344
--> 345 import sage.all # until sage's import hell is fixed
sage.all = undefined
346
347 self.shell.verbose_quit = True
348 self.set_quit_hook()
349
350 self.register_interface_magics()
351
352 if SAGE_IMPORTALL == 'yes':
353 self.init_environment()
354
355 def register_interface_magics(self):
356 """
357 Register magics for each of the Sage interfaces
358 """
359 from sage.repl.interface_magic import InterfaceMagic
360 InterfaceMagic.register_all(self.shell)
/opt/SageMath/local/lib/python2.7/site-packages/sage/all.py in <module>()
270
271 # A deprecation(20442) warning will be given when this module is
272 # imported, in particular when these functions are used.
273 lazy_import("sage.ext.interactive_constructors_c", ["inject_on",
"inject_off"])
274
275
sage.structure.sage_object.register_unpickle_override('sage.categories.category',
'Sets', Sets)
276
sage.structure.sage_object.register_unpickle_override('sage.categories.category_types',
'HeckeModules', HeckeModules)
277
sage.structure.sage_object.register_unpickle_override('sage.categories.category_types',
'Objects', Objects)
278
sage.structure.sage_object.register_unpickle_override('sage.categories.category_types',
'Rings', Rings)
279
sage.structure.sage_object.register_unpickle_override('sage.categories.category_types',
'Fields', Fields)
280
sage.structure.sage_object.register_unpickle_override('sage.categories.category_types',
'VectorSpaces', VectorSpaces)
281
sage.structure.sage_object.register_unpickle_override('sage.categories.category_types',
'Schemes_over_base', sage.categories.schemes.Schemes_over_base)
282
sage.structure.sage_object.register_unpickle_override('sage.categories.category_types',
'ModularAbelianVarieties', ModularAbelianVarieties)
283
284 # Cache the contents of star imports.
--> 285 sage.misc.lazy_import.save_cache_file()
global sage.misc.lazy_import.save_cache_file = undefined
286
287
288 ### Debugging for Singular, see trac #10903
289 # from sage.libs.singular.ring import poison_currRing
290 # sys.settrace(poison_currRing)
291
292
293 # Write a file indicating that Sage was started up successfully.
294 # This is called by the sage-starts script.
295 def _write_started_file():
296 """
297 Write a ``sage-started.txt`` file if it does not exist. The
298 contents of this file do not matter, only its existence.
299
300 The non-existence of this file will be used as a trigger to run
/opt/SageMath/src/sage/misc/lazy_import.pyx in
sage.misc.lazy_import.save_cache_file
(/opt/SageMath/src/build/cythonized/sage/misc/lazy_import.c:7868)()
1080 TESTS::
1081
1082 sage: import sage.misc.lazy_import
1083 sage: sage.misc.lazy_import.save_cache_file()
1084 """
1085 from sage.misc.misc import sage_makedirs
1086 from sage.misc.temporary_file import atomic_write
1087
1088 global star_imports
1089 if star_imports is None:
1090 star_imports = {}
1091 cache_file = get_cache_file()
1092 cache_dir = os.path.dirname(cache_file)
1093
1094 sage_makedirs(cache_dir)
-> 1095 with atomic_write(cache_file) as f:
global atomic_write = undefined
global cache_file = undefined
global f = undefined
1096 pickle.dump(star_imports, f)
1097
1098 def get_star_imports(module_name):
1099 """
1100 Lookup the list of names in a module that would be imported with
"import \\*"
1101 either via a cache or actually importing.
1102
1103 EXAMPLES::
1104
1105 sage: from sage.misc.lazy_import import get_star_imports
1106 sage: 'get_star_imports' in
get_star_imports('sage.misc.lazy_import')
1107 True
1108 sage: 'EllipticCurve' in get_star_imports('sage.schemes.all')
1109 True
1110
/opt/SageMath/local/lib/python2.7/site-packages/sage/misc/temporary_file.pyc in
__enter__(self=<sage.misc.temporary_file.atomic_write instance>)
360 the same directory as the target file).
361
362 If ``self.append``, then copy the current contents of
363 ``self.target`` to the temporary file.
364
365 OUTPUT: a file returned by :func:`tempfile.NamedTemporaryFile`.
366
367 TESTS::
368
369 sage: from sage.misc.temporary_file import atomic_write
370 sage: aw = atomic_write(tmp_filename())
371 sage: with aw as f:
372 ....: os.path.dirname(aw.target) ==
os.path.dirname(f.name)
373 True
374 """
--> 375 self.tempfile = tempfile.NamedTemporaryFile(dir=self.tmpdir,
delete=False)
self.tempfile = undefined
global tempfile.NamedTemporaryFile = <function NamedTemporaryFile at
0x7f7ccab9db90>
global dir = undefined
self.tmpdir = '/home/sebastian/.sage/cache'
global delete = undefined
global False = undefined
376 self.tempname = self.tempfile.name
377 os.chmod(self.tempname, self.mode)
378 if self.append:
379 try:
380 r = open(self.target).read()
381 except IOError:
382 pass
383 else:
384 self.tempfile.write(r)
385 return self.tempfile
386
387 def __exit__(self, exc_type, exc_val, exc_tb):
388 """
389 If the ``with`` block was successful, move the temporary file
390 to the target file. Otherwise, delete the temporary file.
/opt/SageMath/local/lib/python/tempfile.pyc in NamedTemporaryFile(mode='w+b',
bufsize=-1, suffix='', prefix='tmp', dir='/home/sebastian/.sage/cache',
delete=False)
449 """
450
451 if dir is None:
452 dir = gettempdir()
453
454 if 'b' in mode:
455 flags = _bin_openflags
456 else:
457 flags = _text_openflags
458
459 # Setting O_TEMPORARY in the flags causes the OS to delete
460 # the file when it is closed. This is only supported by Windows.
461 if _os.name == 'nt' and delete:
462 flags |= _os.O_TEMPORARY
463
--> 464 (fd, name) = _mkstemp_inner(dir, prefix, suffix, flags)
fd = undefined
name = undefined
global _mkstemp_inner = <function _mkstemp_inner at 0x7f7ccab9d8c0>
dir = '/home/sebastian/.sage/cache'
prefix = 'tmp'
suffix = ''
flags = 131266
465 try:
466 file = _os.fdopen(fd, mode, bufsize)
467 return _TemporaryFileWrapper(file, name, delete)
468 except:
469 _os.close(fd)
470 raise
471
472 if _os.name != 'posix' or _os.sys.platform == 'cygwin':
473 # On non-POSIX and Cygwin systems, assume that we cannot unlink a
file
474 # while it is open.
475 TemporaryFile = NamedTemporaryFile
476
477 else:
478 def TemporaryFile(mode='w+b', bufsize=-1, suffix="",
479 prefix=template, dir=None):
/opt/SageMath/local/lib/python/tempfile.pyc in
_mkstemp_inner(dir='/home/sebastian/.sage/cache', pre='tmp', suf='',
flags=131266)
224 _name_sequence = _RandomNameSequence()
225 finally:
226 _once_lock.release()
227 return _name_sequence
228
229
230 def _mkstemp_inner(dir, pre, suf, flags):
231 """Code common to mkstemp, TemporaryFile, and NamedTemporaryFile."""
232
233 names = _get_candidate_names()
234
235 for seq in xrange(TMP_MAX):
236 name = names.next()
237 file = _os.path.join(dir, pre + name + suf)
238 try:
--> 239 fd = _os.open(file, flags, 0600)
fd = undefined
global _os.open = <built-in function open>
file = '/home/sebastian/.sage/cache/tmpKIEeIX'
flags = 131266
240 _set_cloexec(fd)
241 return (fd, _os.path.abspath(file))
242 except OSError, e:
243 if e.errno == _errno.EEXIST:
244 continue # try again
245 if _os.name == 'nt' and e.errno == _errno.EACCES:
246 # On windows, when a directory with the chosen name
already
247 # exists, EACCES error code is returned instead of
EEXIST.
248 continue
249 raise
250
251 raise IOError, (_errno.EEXIST, "No usable temporary file name
found")
252
253
254 # User visible interfaces.
OSError: [Errno 13] Permission denied: '/home/sebastian/.sage/cache/tmpKIEeIX'
***************************************************************************
History of session input:
*** Last line of input (may not be in above history):