MacOS – Python interpreter crashes on execution

crashmacospythonsymlink

having bought my first macbook I am not very experienced in debugging the libraries and a bit at a loss. Upon execution of my python script the following error report shows up:

Process: Python [356] Path:
/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
Identifier: Python Version: 2.7.10 (2.7.10)
Code Type: X86-64 (Native) Parent Process: bash
[262] Responsible: Terminal [225] User ID: 501

Date/Time: 2015-09-25 12:53:24.544 +0200 OS Version:
Mac OS X 10.10.5 (14F27) Report Version: 11 Anonymous UUID:
2262FF9F-1D12-77B0-74D3-208AC3A26542

Time Awake Since Boot: 27 seconds

Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Exception Type: EXC_CRASH (SIGABRT) Exception Codes:
0x0000000000000000, 0x0000000000000000

Application Specific Information: abort() called

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0
libsystem_kernel.dylib 0x00007fff8b956286 pthread_kill +
10 1 libsystem_c.dylib 0x00007fff8b9c49b3 abort +
129 2 org.python.python 0x000000010b6fe2a3
Py_FatalError + 49 3 org.python.python
0x000000010b6fd785 PyThreadState_Get + 28 4 org.python.python
0x000000010b6fa522 Py_InitModule4_64 + 62 5 libboost_python.dylib
0x000000010b5e1e24 boost::python::detail::init_module(char const*,
void (*)()) + 36 6 org.python.python
0x00000001000deba1 _PyImport_LoadDynamicModule + 177 7
org.python.python 0x00000001000dd28b import_submodule
+ 315 8 org.python.python 0x00000001000dd73a load_next + 234 9 org.python.python
0x00000001000dda30 PyImport_ImportModuleLevel + 336 10
org.python.python 0x00000001000bafe3
builtin___import
+ 131 11 org.python.python
0x000000010000c612 PyObject_Call + 98 12 org.python.python
0x00000001000bc1c7 PyEval_CallObjectWithKeywords + 87 13
org.python.python 0x00000001000c0432
PyEval_EvalFrameEx + 12210 14 org.python.python
0x00000001000c58e3 PyEval_EvalCodeEx + 2115 15 org.python.python
0x00000001000c5a06 PyEval_EvalCode + 54 16 org.python.python
0x00000001000da0a0 PyImport_ExecCodeModuleEx + 208 17
org.python.python 0x00000001000db2a2
load_source_module + 626 18 org.python.python
0x00000001000dd28b import_submodule + 315 19 org.python.python
0x00000001000dd73a load_next + 234 20 org.python.python
0x00000001000dda30 PyImport_ImportModuleLevel + 336 21
org.python.python 0x00000001000bafe3
builtin___import__ + 131 22 org.python.python
0x000000010000c612 PyObject_Call + 98 23 org.python.python
0x00000001000bc1c7 PyEval_CallObjectWithKeywords + 87 24
org.python.python 0x00000001000c0432
PyEval_EvalFrameEx + 12210 25 org.python.python
0x00000001000c58e3 PyEval_EvalCodeEx + 2115 26 org.python.python
0x00000001000c5a06 PyEval_EvalCode + 54 27 org.python.python
0x00000001000da0a0 PyImport_ExecCodeModuleEx + 208 28
org.python.python 0x00000001000db2a2
load_source_module + 626 29 org.python.python
0x00000001000dd28b import_submodule + 315 30 org.python.python
0x00000001000dd7c1 load_next + 369 31 org.python.python
0x00000001000dda30 PyImport_ImportModuleLevel + 336 32
org.python.python 0x00000001000bafe3
builtin___import__ + 131 33 org.python.python
0x000000010000c612 PyObject_Call + 98 34 org.python.python
0x00000001000bc1c7 PyEval_CallObjectWithKeywords + 87 35
org.python.python 0x00000001000c0432
PyEval_EvalFrameEx + 12210 36 org.python.python
0x00000001000c58e3 PyEval_EvalCodeEx + 2115 37 org.python.python
0x00000001000c5a06 PyEval_EvalCode + 54 38 org.python.python
0x00000001000da0a0 PyImport_ExecCodeModuleEx + 208 39
org.python.python 0x00000001000db2a2
load_source_module + 626 40 org.python.python
0x00000001000dd28b import_submodule + 315 41 org.python.python
0x00000001000dd73a load_next + 234 42 org.python.python
0x00000001000dda7c PyImport_ImportModuleLevel + 412 43
org.python.python 0x00000001000bafe3
builtin___import__ + 131 44 org.python.python
0x000000010000c612 PyObject_Call + 98 45 org.python.python
0x00000001000bc1c7 PyEval_CallObjectWithKeywords + 87 46
org.python.python 0x00000001000c0432
PyEval_EvalFrameEx + 12210 47 org.python.python
0x00000001000c58e3 PyEval_EvalCodeEx + 2115 48 org.python.python
0x00000001000c5a06 PyEval_EvalCode + 54 49 org.python.python
0x00000001000ea41e PyRun_FileExFlags + 174 50 org.python.python
0x00000001000ea6ba PyRun_SimpleFileExFlags + 458 51 org.python.python
0x000000010010187d Py_Main + 3101 52 org.python.python
0x0000000100000f14 0x100000000 + 3860

So …. how do I read this? What is broken, wrongfully linked or otherwise? Any help is appreciated!

Best Answer

Welcome to software debugging. That topic is too broad to convey in a short answer here, but hopefully some context and guidelines will help.

  1. Your Python program itself crashed - so you don't easily know what call or sequence of calls caused the error from the container crashing.
  2. Gather details like what version of Python is running, what version of each library.
  3. Try enabling debug flags for the libraries or run the python script in a python debugger so you can know where the crash ocurrs.

Once or have that level of detail, you'll start to isolate the issue by reducing the complexity of the code by removing all that's necessary to either stop crash or have a minimal example of the crashing behavior (say 10 lines of Python plus whatever data setup is needed) and ask about that in Stack Overflow.