Description | Building FreeCAD against VTK 7.1 with Python Bindings enables VTK access from Python within FreeCAD. In this configuration, I am able to create and even display a cylinder using VTK from FreeCAD's Python console however if I activate the FEM Workbench, a segmentation fault is raised. Below is the output from lldb.
Process 77669 stopped
* thread #1: tid = 0xda09ab, 0x00000001000deebe libFreeCADGui.dylib`Gui::Application::sActivateWorkbenchHandler((null)=0x0000000000000000, args=0x0000000107dbb590, (null)=0x0000000000000000) + 46 at ApplicationPy.cpp:685, queue = 'com.apple.main-thread', stop reason = breakpoint 2.1
frame #0: 0x00000001000deebe libFreeCADGui.dylib`Gui::Application::sActivateWorkbenchHandler((null)=0x0000000000000000, args=0x0000000107dbb590, (null)=0x0000000000000000) + 46 at ApplicationPy.cpp:685
682 PyObject* Application::sActivateWorkbenchHandler(PyObject * /*self*/, PyObject *args,PyObject * /*kwd*/)
683 {
684 char* psKey;
-> 685 if (!PyArg_ParseTuple(args, "s", &psKey)) // convert args: Python->C
* thread #1: tid = 0xda09ab, 0x0000000135ccd4da Python`___lldb_unnamed_symbol976$$Python + 127, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x18)
frame #0: 0x0000000135ccd4da Python`___lldb_unnamed_symbol976$$Python + 127
Python`___lldb_unnamed_symbol976$$Python:
-> 0x135ccd4da <+127>: movl 0x18(%rax), %ecx
0x135ccd4dd <+130>: incl %ecx
0x135ccd4df <+132>: movl %ecx, 0x18(%rax)
0x135ccd4e2 <+135>: leaq 0xca593(%rip), %rax ; _Py_CheckRecursionLimit
OS: Mac OS X
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.9784 (Git)
Build type: DEBUG
Branch: master
Hash: febb6bf810d8f77903481a7c9d825e7ad906e9ea
Python version: 2.7.13
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.1.0
|
---|
Additional Information | Backtrace for crash
(lldb) bt
* thread #1: tid = 0xda09ab, 0x0000000135ccd4da Python`___lldb_unnamed_symbol976$$Python + 127, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x18)
* frame #0: 0x0000000135ccd4da Python`___lldb_unnamed_symbol976$$Python + 127
frame #1: 0x0000000101d1c54c Python`PyObject_Repr + 59
frame 0000002: 0x0000000101a1a7a7 libFreeCADBase.dylib`Py::Object::repr(this=0x00007fff5fbf6290) const + 39 at cxxsupport.cxx:55
frame 0000003: 0x0000000101a07a6b libFreeCADBase.dylib`Py::Object::validate(this=0x00007fff5fbf6290) + 379 at cxx_extensions.cxx:109
frame 0000004: 0x00000001322f7563 Fem.so`Py::Object::set(this=0x00007fff5fbf6290, pyob=0x000000013b154050, owned=true) + 83 at Objects.hxx:167
frame 0000005: 0x00000001323ae15d Fem.so`Py::Tuple::Tuple(this=0x00007fff5fbf6290, size=2) + 93 at Objects.hxx:2310
frame 0000006: 0x00000001323adf8d Fem.so`Py::Tuple::Tuple(this=0x00007fff5fbf6290, size=2) + 29 at Objects.hxx:2309
frame 0000007: 0x00000001323aaca9 Fem.so`Py::ExtensionModule<Fem::Module>::initialize(this=0x000000012e9659a0, module_doc="This module is the Fem module.") + 1161 at ExtensionModule.hxx:138
frame 0000008: 0x00000001323a6eaf Fem.so`Fem::Module::Module(this=0x000000012e9659a0) + 447 at AppFemPy.cpp:108
frame 0000009: 0x00000001323a6cc5 Fem.so`Fem::Module::Module(this=0x000000012e9659a0) + 21 at AppFemPy.cpp:84
frame 0000010: 0x00000001323a6c3a Fem.so`Fem::initModule() + 42 at AppFemPy.cpp:322
frame 0000011: 0x00000001323a67eb Fem.so`::initFem() + 171 at AppFem.cpp:88
frame 0000012: 0x0000000101d81a86 Python`_PyImport_LoadDynamicModule + 140
frame 0000013: 0x0000000101d80782 Python`import_submodule + 267
frame 0000014: 0x0000000101d80348 Python`load_next + 280
frame 0000015: 0x0000000101d7f50f Python`PyImport_ImportModuleLevel + 1133
frame 0000016: 0x0000000101d6133e Python`builtin___import__ + 135
frame 0000017: 0x0000000101cec921 Python`PyObject_Call + 99
frame 0000018: 0x0000000101d6fe37 Python`PyEval_CallObjectWithKeywords + 165
frame 0000019: 0x0000000101d6b051 Python`PyEval_EvalFrameEx + 20765
frame 0000020: 0x0000000101d65d3e Python`PyEval_EvalCodeEx + 1617
frame 0000021: 0x0000000101d0ac73 Python`function_call + 350
frame 0000022: 0x0000000101cec921 Python`PyObject_Call + 99
frame 0000023: 0x0000000101cf7685 Python`instancemethod_call + 173
frame 0000024: 0x0000000101cec921 Python`PyObject_Call + 99
frame 0000025: 0x0000000101d6fe37 Python`PyEval_CallObjectWithKeywords + 165
frame 0000026: 0x00000001000bac73 libFreeCADGui.dylib`Py::Callable::apply(this=0x00007fff5fbf7498, args=0x00007fff5fbf7568) const + 67 at Objects.hxx:3227
frame 0000027: 0x00000001000b8ed7 libFreeCADGui.dylib`Gui::Application::activateWorkbench(this=0x00007fff5fbfc480, name="FemWorkbench") + 4583 at Application.cpp:967
frame 0000028: 0x00000001000def69 libFreeCADGui.dylib`Gui::Application::sActivateWorkbenchHandler((null)=0x0000000000000000, args=0x0000000107dbb590, (null)=0x0000000000000000) + 217 at ApplicationPy.cpp:696
frame 0000029: 0x0000000101d6c86a Python`PyEval_EvalFrameEx + 26934
frame 0000030: 0x0000000101d65d3e Python`PyEval_EvalCodeEx + 1617
frame 0000031: 0x0000000101d656e7 Python`PyEval_EvalCode + 48
frame 0000032: 0x0000000101d89068 Python`run_mod + 53
frame 0000033: 0x0000000101d89225 Python`PyRun_StringFlags + 109
frame 0000034: 0x0000000101a699ac libFreeCADBase.dylib`Base::InterpreterSingleton::runString(this=0x0000000105d10120, sCmd="Gui.activateWorkbench(\"FemWorkbench\")") + 412 at Interpreter.cpp:196
frame 0000035: 0x00000001001b0560 libFreeCADGui.dylib`Gui::Command::doCommand(eType=Gui, sCmd="Gui.activateWorkbench(\"%s\")") + 720 at Command.cpp:475
frame 0000036: 0x00000001001e0068 libFreeCADGui.dylib`StdCmdWorkbench::activated(this=0x0000000114811510, i=4) + 2264 at CommandStd.cpp:99
frame 0000037: 0x00000001001af9f4 libFreeCADGui.dylib`Gui::Command::invoke(this=0x0000000114811510, i=4) + 132 at Command.cpp:300
frame 0000038: 0x00000001001a39e4 libFreeCADGui.dylib`Gui::ActionGroup::onActivated(this=0x000000010e794570, a=0x000000010e7519e0) + 628 at Action.cpp:350
frame #39: 0x00000001001aa11d libFreeCADGui.dylib`Gui::ActionGroup::qt_static_metacall(_o=0x000000010e794570, _c=InvokeMetaMethod, _id=2, _a=0x00007fff5fbf91a0) + 221 at moc_Action.cpp:128
frame #40: 0x00000001055b41fb QtCore`QMetaObject::activate(QObject*, QMetaObject const*, int, void**) + 2077
frame 0000041: 0x00000001047f95d8 QtGui`QActionGroupPrivate::_q_actionTriggered() + 108
frame 0000042: 0x00000001055b41fb QtCore`QMetaObject::activate(QObject*, QMetaObject const*, int, void**) + 2077
frame 0000043: 0x00000001047f85e2 QtGui`QAction::activate(QAction::ActionEvent) + 208
frame 0000044: 0x00000001001a48b7 libFreeCADGui.dylib`QAction::trigger(this=0x000000010e7519e0) + 23 at qaction.h:218
frame 0000045: 0x00000001001a634d libFreeCADGui.dylib`Gui::WorkbenchGroup::customEvent(this=0x000000010e794570, e=0x00000001259f5990) + 61 at Action.cpp:581
frame 0000046: 0x00000001055b01b9 QtCore`QObject::event(QEvent*) + 705
frame 0000047: 0x00000001048001ac QtGui`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 194
frame 0000048: 0x0000000104802c8c QtGui`QApplication::notify(QObject*, QEvent*) + 6474
frame 0000049: 0x00000001001711a6 libFreeCADGui.dylib`Gui::GUIApplication::notify(this=0x00007fff5fbfc970, receiver=0x000000010e794570, event=0x00000001259f5990) + 934 at GuiApplication.cpp:91
frame 0000050: 0x000000010559faf0 QtCore`QCoreApplication::notifyInternal(QObject*, QEvent*) + 118
frame 0000051: 0x00000001055a0574 QtCore`QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 622
frame 0000052: 0x00007fff760ca3c1 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
frame 0000053: 0x00007fff760ab2cd CoreFoundation`__CFRunLoopDoSources0 + 557
frame 0000054: 0x00007fff760aa7c6 CoreFoundation`__CFRunLoopRun + 934
frame 0000055: 0x00007fff760aa1c4 CoreFoundation`CFRunLoopRunSpecific + 420
frame 0000056: 0x00007fff7561a51c HIToolbox`RunCurrentEventLoopInMode + 240
frame 0000057: 0x00007fff7561a259 HIToolbox`ReceiveNextEventCommon + 184
frame 0000058: 0x00007fff7561a186 HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 71
frame 0000059: 0x00007fff73bb45f4 AppKit`_DPSNextEvent + 1120
frame 0000060: 0x00007fff7432fc3a AppKit`-[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 2796
frame 0000061: 0x00007fff73ba8f7b AppKit`-[NSApplication run] + 926
frame 0000062: 0x00000001047bd11b QtGui`QEventDispatcherMac::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 1725
frame 0000063: 0x000000010559cfc5 QtCore`QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 77
frame 0000064: 0x000000010559d13f QtCore`QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 365
frame 0000065: 0x000000010559ff4a QtCore`QCoreApplication::exec() + 200
frame 0000066: 0x00000001000c6477 libFreeCADGui.dylib`Gui::Application::runApplication() + 25031 at Application.cpp:1743
frame 0000067: 0x000000010000add6 FreeCAD`main(argc=1, argv=0x00007fff5fbff9c8) + 13030 at MainGui.cpp:238
frame 0000068: 0x00007fff8ba12235 libdyld.dylib`start + 1
frame 0000069: 0x00007fff8ba12235 libdyld.dylib`start + 1
|
---|