Coder Social home page Coder Social logo

Comments (12)

kmkolasinski avatar kmkolasinski commented on July 21, 2024

Hi, Did you try the binaries?

from awesomebump.

schtibe avatar schtibe commented on July 21, 2024

Yes, afterwards, they work!

from awesomebump.

tr37ion avatar tr37ion commented on July 21, 2024

I have Arch too, and I get the same segfault with master.

Here are the gdb error msg, bt and info registers. Moreover, I added the last lines of ltrace and strace output:

--- Error Message:

Program received signal SIGSEGV, Segmentation fault.
0x0000000000417c8e in GLWidget::paintGL (this=0xeabcd0) at ../Sources/glwidget.cpp:544
544     viewMatrix = camera.updateCamera();

--- Info Regsiters:

rax            0xeacf90 15388560
rbx            0x1d6    470
rcx            0xead2a4 15389348
rdx            0x0  0
rsi            0x7fffffffc0b0   140737488339120
rdi            0x7fffffffc110   140737488339216
rbp            0x7fffffffc2f0   0x7fffffffc2f0
rsp            0x7fffffffc1e0   0x7fffffffc1e0
r8             0x0  0
r9             0x7fffffffc0de   140737488339166
r10            0xd19    3353
r11            0x7ffff6f3c9c0   140737336560064
r12            0xffffffff   4294967295
r13            0xffffffff   4294967295
r14            0xeacf90 15388560
r15            0x0  0
rip            0x417c8e 0x417c8e <GLWidget::paintGL()+458>
eflags         0x10206  [ PF IF RF ]
cs             0x33 51
ss             0x2b 43
ds             0x0  0
es             0x0  0
fs             0x0  0
gs             0x0  0

--- BT:

#0  0x0000000000417c8e in GLWidget::paintGL (this=0xeacf90) at ../Sources/glwidget.cpp:544
#1  0x00007ffff7ba38e4 in QGLWidget::glDraw() () from /usr/lib/libQt5OpenGL.so.5
#2  0x00007ffff7ba328d in QGLWidget::paintEvent(QPaintEvent*) () from /usr/lib/libQt5OpenGL.so.5
#3  0x00007ffff748af08 in QWidget::event(QEvent*) () from /usr/lib/libQt5Widgets.so.5
#4  0x00007ffff744800c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#5  0x00007ffff744d4e6 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#6  0x00007ffff670e89b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#7  0x00007ffff7483b39 in QWidgetPrivate::sendPaintEvent(QRegion const&) () from /usr/lib/libQt5Widgets.so.5
#8  0x00007ffff7484181 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/libQt5Widgets.so.5
#9  0x00007ffff7453c02 in QWidgetPrivate::repaint_sys(QRegion const&) () from /usr/lib/libQt5Widgets.so.5
#10 0x00007ffff74a7c03 in ?? () from /usr/lib/libQt5Widgets.so.5
#11 0x00007ffff744800c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#12 0x00007ffff744d4e6 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#13 0x00007ffff670e89b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#14 0x00007ffff6c6ec4c in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) ()
   from /usr/lib/libQt5Gui.so.5
#15 0x00007ffff6c6f9cd in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) ()
   from /usr/lib/libQt5Gui.so.5
#16 0x00007ffff6c54e08 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/libQt5Gui.so.5
#17 0x00007fffec29f9f0 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#18 0x00007ffff4dd69fd in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#19 0x00007ffff4dd6ce0 in ?? () from /usr/lib/libglib-2.0.so.0
#20 0x00007ffff4dd6d8c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#21 0x00007ffff676523f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#22 0x000000000043370d in MainWindow::initializeImages (this=0x7fffffffda50) at ../Sources/mainwindow.cpp:1156
#23 0x000000000050a9d0 in MainWindow::qt_static_metacall (_o=0x7fffffffda50, _c=QMetaObject::InvokeMetaMethod, _id=3, 
    _a=0x7fffffffcea0) at Build/Ui/moc_mainwindow.cpp:297
#24 0x00007ffff673cfea in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5
#25 0x000000000050cac5 in GLImage::rendered (this=0xc3f880) at Build/Ui/moc_glimageeditor.cpp:196
#26 0x00000000004b1cea in GLImage::paintGL (this=0xc3f880) at ../Sources/glimageeditor.cpp:313
#27 0x00007ffff7ba38e4 in QGLWidget::glDraw() () from /usr/lib/libQt5OpenGL.so.5
#28 0x00007ffff7ba328d in QGLWidget::paintEvent(QPaintEvent*) () from /usr/lib/libQt5OpenGL.so.5
#29 0x00007ffff748af08 in QWidget::event(QEvent*) () from /usr/lib/libQt5Widgets.so.5
#30 0x00007ffff744800c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#31 0x00007ffff744d4e6 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#32 0x00007ffff670e89b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#33 0x00007ffff7483b39 in QWidgetPrivate::sendPaintEvent(QRegion const&) () from /usr/lib/libQt5Widgets.so.5
#34 0x00007ffff7484181 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/libQt5Widgets.so.5
#35 0x00007ffff7453c02 in QWidgetPrivate::repaint_sys(QRegion const&) () from /usr/lib/libQt5Widgets.so.5
#36 0x00007ffff74a7c03 in ?? () from /usr/lib/libQt5Widgets.so.5
#37 0x00007ffff744800c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#38 0x00007ffff744d4e6 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#39 0x00007ffff670e89b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#40 0x00007ffff6c6ec4c in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) ()
   from /usr/lib/libQt5Gui.so.5
#41 0x00007ffff6c6f9cd in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) ()
   from /usr/lib/libQt5Gui.so.5
#42 0x00007ffff6c54e08 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/libQt5Gui.so.5
#43 0x00007fffec29f9f0 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#44 0x00007ffff4dd69fd in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#45 0x00007ffff4dd6ce0 in ?? () from /usr/lib/libglib-2.0.so.0
#46 0x00007ffff4dd6d8c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#47 0x00007ffff676523f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#48 0x00007ffff670c26a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#49 0x00007ffff671420c in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#50 0x000000000042778a in main (argc=1, argv=0x7fffffffde68) at ../Sources/main.cpp:220

--- ldtrace (snip of the last lines):

15:36:48.939352 SYS_futex(0x9b8ac8, 129, 1, 0)                                      = 0
15:36:48.939393 SYS_poll(0x7fff13fcd1f0, 1, -1)                                     = 1
15:36:48.939425 SYS_writev(3, 0x7fff13fcd320, 1)                                    = 16
15:36:48.939457 SYS_futex(0x7fff13fcd3a4, 128, 1, 0)                                = 0
15:36:48.939519 SYS_futex(0x9b8ac8, 128, 2, 0)                                      = -11
15:36:48.939557 SYS_futex(0x9b8ac8, 129, 1, 0)                                      = 0
15:36:48.939597 SYS_poll(0x7fff13fcd1f0, 1, -1)                                     = 1
15:36:48.939628 SYS_writev(3, 0x7fff13fcd320, 1)                                    = 8
15:36:48.939670 SYS_futex(0x7fff13fcd3a4, 128, 1, 0)                                = 0
15:36:48.939737 SYS_futex(0x9b8ac8, 128, 2, 0)                                      = -11
15:36:48.939776 SYS_futex(0x9b8ac8, 129, 1, 0)                                      = 0
15:36:48.939825 SYS_write(5, "\001", 8)                                             = 8
15:36:48.939869 _ZNK9QGLWidget11paintEngineEv(0xdd7d10, 0x7fff13fcd898, 0, 0x8800)  = 0xab3a30
15:36:48.940036 _ZThn16_NK9QGLWidget11paintEngineEv(0xdd7d20, 0x40000000, 0xdd0a50, 0xffffffffffc8a1c0) = 0xab3a30
15:36:48.940155 _ZThn16_NK9QGLWidget11paintEngineEv(0xdd7d20, 0xdd7d20, 0x7fff13fcd4b0, 2) = 0xab3a30
15:36:48.940265 _ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE(0xdd7d20, 11, 0, 0) = 1
15:36:48.940386 _ZN9QGLWidget5eventEP6QEvent(0xdd7d10, 0x7fff13fcd390, 0x7fff13fcd390, 0xdd0920 <unfinished ...>
15:36:48.940481 _ZN9QGLWidget10paintEventEP11QPaintEvent(0xdd7d10, 0x7fff13fcd390, 0x7f669b62a960, 0x8b84 <unfinished ...>
15:36:48.940569 _ZN9QGLWidget6glDrawEv(0xdd7d10, 0x7fff13fcd390, 0x7f669b62a960, 0x8b84 <unfinished ...>
15:36:48.940662 _ZThn16_NK7QWidget7devTypeEv(0xdd7d20, 0x7fff13fcd390, 0x7f669b62a960, 0x8b84) = 1
15:36:48.940768 SYS_getpid()                                                        = 12000
15:36:48.940819 SYS_sched_yield(1, 0x7fff13fcb6f0, 0x7f669a3f06e4, 0xd4ba78)        = 0
15:36:48.940874 SYS_poll(0x7fff13fccba0, 1, -1)                                     = 1
15:36:48.940908 SYS_writev(3, 0x7fff13fccd10, 3)                                    = 24
15:36:48.940943 SYS_futex(0x7fff13fccce4, 128, 1, 0)                                = 0
15:36:48.941034 SYS_futex(0x9b8ac8, 129, 1, 0)                                      = 0
15:36:48.941105 _ZN20QOpenGLShaderProgram4bindEv(0x5477dd0, 0x4b73ba0, 0, 0xfffffffc) = 1
15:36:48.941344 _ZN10QMatrix4x45scaleEf(0xdd7f70, 0x2000000, 0x4124a140, 512)       = 2
15:36:48.941509 _ZN10QMatrix4x46rotateEffff(0xdd7f70, 0x2000000, 0x4124a140, 512)   = 1
15:36:48.941676 _ZNK10QMatrix4x412normalMatrixEv(0x7fff13fcce50, 0xdd7ec4, 0, 512)  = 0x7fff13fcce50
15:36:48.941784 _ZN20QOpenGLShaderProgram15setUniformValueEPKcRK10QMatrix4x4(0x5477dd0, 0x4b976a, 0xdd7ec4, 0) = 0x7f66974e41e0
15:36:48.941893 glGetError(0x4b9ff8, 0x4bbb20, 704, 0xffffffff)                     = 0
15:36:48.942001 _ZN20QOpenGLShaderProgram15setUniformValueEPKcRK14QGenericMatrixILi3ELi3EfE(0x5477dd0, 0x4b977a, 0xdd7f08, 0xffffffff <unfinished ...>
15:36:48.942095 SYS_getpid()                                                        = 12000
15:36:48.942137 <... _ZN20QOpenGLShaderProgram15setUniformValueEPKcRK14QGenericMatrixILi3ELi3EfE resumed> ) = 0
15:36:48.942158 glGetError(0x4ba040, 0x4bbb20, 705, 0x4b84fc0)                      = 0
15:36:48.942275 _ZN20QOpenGLShaderProgram15setUniformValueEPKcRK10QMatrix4x4(0x5477dd0, 0x4b9787, 0xdd7f70, 0x4b84fc0) = 0x7f66974e41e0
15:36:48.942457 glGetError(0x4ba080, 0x4bbb20, 706, 0xffffffff)                     = 0
15:36:48.942564 _ZN20QOpenGLShaderProgram15setUniformValueEPKcRK10QMatrix4x4(0x5477dd0, 0x4b9793, 0xdd7e80, 0xffffffff) = 0x7f66974e41e0
15:36:48.942668 glGetError(0x4ba0c0, 0x4bbb20, 707, 0xffffffff)                     = 0
15:36:48.942776 glGetError(0x4b97a4, 0x4bbb20, 709, 0)                              = 0
15:36:48.942886 glGetError(0x4b97c1, 0x4bbb20, 710, 1)                              = 0
15:36:48.943897 glGetError(0x4b97d3, 0x4bbb20, 711, 1)                              = 0
15:36:48.944081 _ZN20QGLFramebufferObject11bindDefaultEv(0x5442930, 0x1fc0000, 0x4124a140, 470) = 1
15:36:48.944200 glGetError(0x4ba718, 0x4bbb60, 465, 470)                            = 0
15:36:48.944319 _ZN10QMatrix4x46lookAtERK9QVector3DS2_S2_(0x7fff13fcce90, 0x7fff13fcce70, 0x7fff13fcce80, 0xdd8024) = 0
15:36:48.944442 --- SIGSEGV (Segmentation fault) ---
15:36:49.072904 +++ killed by SIGSEGV +++

--- strace (snip of the last lines):

futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7ffea2c14010, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0003\1@\0037\0\4\0004\1@\3\26\0@\3\0\0\0\0\202\3\n\0\26\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0004\1@\0037\0\4\0005\1@\3:\0@\3\0\0\0\0\202\3\n\0:\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0005\1@\0037\0\4\0006\1@\3\32\0@\3\0\0\0\0\202\3\n\0\32\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0006\1@\0037\0\4\0007\1@\3\34\0@\3\0\0\0\0\202\3\n\0\34\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0007\1@\0037\0\4\0008\1@\3\36\0@\3\0\0\0\0\202\3\n\0\36\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0008\1@\0037\0\4\0009\1@\3&\0@\3\0\0\0\0\202\3\n\0&\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0<\0@\3", 8}], 1)  = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0&\0@\3", 8}], 1)  = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0\36\0@\3", 8}], 1) = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0\34\0@\3", 8}], 1) = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0\32\0@\3", 8}], 1) = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0\26\0@\3", 8}], 1) = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"(\0\4\0\32\0@\3\26\0@\3\0\0\0\0", 16}], 1) = 16
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\16\0\2\0\26\0@\3", 8}], 1) = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0009\1@\0037\0\4\0:\1@\3\26\0@\3\0\0\0\0\202\3\n\0\26\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0:\1@\0037\0\4\0;\1@\3<\0@\3\0\0\0\0\202\3\n\0<\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0;\1@\0037\0\4\0<\1@\3\32\0@\3\0\0\0\0\202\3\n\0\32\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0<\1@\0037\0\4\0=\1@\3\34\0@\3\0\0\0\0\202\3\n\0\34\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0=\1@\0037\0\4\0>\1@\3\36\0@\3\0\0\0\0\202\3\n\0\36\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"<\0\2\0>\1@\0037\0\4\0?\1@\3&\0@\3\0\0\0\0\202\3\n\0&\0@\3"..., 64}], 1) = 64
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0\21\0@\3", 8}], 1) = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0&\0@\3", 8}], 1)  = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = 0
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0\36\0@\3", 8}], 1) = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0\34\0@\3", 8}], 1) = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = 0
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0\32\0@\3", 8}], 1) = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\17\0\2\0\26\0@\3", 8}], 1) = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"(\0\4\0\32\0@\3\26\0@\3\0\0\0\0", 16}], 1) = 16
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = 0
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\16\0\2\0\26\0@\3", 8}], 1) = 8
futex(0x7ffea2c14014, FUTEX_WAIT_PRIVATE, 1, NULL) = 0
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
write(5, "\1\0\0\0\0\0\0\0", 8)         = 8
getpid()                                = 13002
sched_yield()                           = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\233%\2\0Q\27\320\301\232\5\4\0\21\0@\3\22\0@\3\1\0\0\0", 24}, {NULL, 0}, {"", 0}], 3) = 24
futex(0x7ffea2c13954, FUTEX_WAIT_PRIVATE, 1, NULL) = 0
futex(0x10e3ac8, FUTEX_WAKE_PRIVATE, 1) = 0
getpid()                                = 13002
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0} ---
+++ killed by SIGSEGV (core dumped) +++
Segmentation fault (core dumped)

Trying to run RunAwesomeBumpGL.sh comes up with the error message:

./AwesomeBump: symbol lookup error: /opt/awesomebump/../../lib/libQt5DBus.so.5: undefined symbol: _Z28qEnvironmentVariableIntValuePKcPb

Running the binary starts the application, but there is no 3D live preview to the left.
(edit: After trying it again the 3D live preview (binary) is working now.)

Btw. Your work on this application is simply awesome ... big THANK YOU !

from awesomebump.

niclashoyer avatar niclashoyer commented on July 21, 2024

I've got the same error on Fedora 22. I can't use the binaries, as they always complain that I do not have OpenGL 3.3. If I comment that line out the segfault is gone, but obviously nothing is shown, as the camera is not updated.

from awesomebump.

kmkolasinski avatar kmkolasinski commented on July 21, 2024

Do you use mesa ? Or you have old graphics card? AB lacks of support for old hardware... I do not know where is the problem unfortunately :(

from awesomebump.

guzzard avatar guzzard commented on July 21, 2024

I'm on Arch Linux. I also get segfault which seem to be related to OpenGL. A lot of OpenGL error "INVALID_****" in the log. Prebuilt binaries for Ubuntu/Mint work fine.

Log, not working (compiled):
http://pastebin.com/ZhU72U6L

Log, working (prebuilt binaries):
http://pastebin.com/NX6vQS0Y

Thanks for an awesome application!!

from awesomebump.

kmkolasinski avatar kmkolasinski commented on July 21, 2024

I don't know why the first does not work, but it detects your opengl as 4.1 which is quite strange. Prebuilt work fine (detected version is 4.5). I'm just amateur programmer :P you should ask Arch support or other specialist, sorry for that.

from awesomebump.

guzzard avatar guzzard commented on July 21, 2024

I have started doing some experimenting.. "glContext->format().minor/majorVersion()" returns version 4.1 with "#define GL_MAJOR 4" "#define GL_MINOR 1" set. If i change GL_MAJOR to for example 5 and GL_MINOR to 5 (just random number >= 4.5) then the OpenGL version is correctly identified and reported as 4.5.0.

If i set it to 3.4 - 4.5 the program crashes with SEGFAULT. If i set it to 3.3 or lower, and 4.6 and higher, the about screen is shown, main window never appears, and when clicking ok the program shut down with exit code 0.

Segfault occurs on this line in in glwidget.cpp:

// setting the camera viewpoint
viewMatrix = camera.updateCamera();

Version 3.0.4 starts ok with correct detection of OpenGL version, and viewport window renders ok. I noticed that the updateCamera function looks slightly different in version 3.0.4 and version 4.0 beta, so I changed the rotM variable to QMatrix4x4, and changed the funtion to be rotM = unit_mat; return rotM;. Just like version 3.0.4

After these small chnages version 4.0 starts without SEGFAULT, but there are still a lot of GL related errors in the log, and the viewport windows are rendered black. Nothing visible in them, same as issue #53.

Log of modified 4.0 beta (master):
https://paste.ee/p/PxHaF

Don't know if this will be any help, but I hope so..

from awesomebump.

CodePhase avatar CodePhase commented on July 21, 2024

I'm running on Fedora 22 x64. I've noticed this too and have also been briefly looking into it. Maybe someone can comment on my theory here. I believe the problem actually lies in the Sources/camera.cpp file in the implementation of AwesomeCamera::updateCamera (emphasis added):

QMatrix4x4& AwesomeCamera::updateCamera(void){
QMatrix4x4 unit_mat;
unit_mat.setToIdentity();
if(isFree){
unit_mat.lookAt(position,
position+direction,
updown_direction
);
}else{

 unit_mat.lookAt(position - (radius)*direction,
            position - (radius)*direction + direction,
            updown_direction
           );
}

return unit_mat;

}

My theory is that the local QMatrix4x4 variable unit_mat is created when the method is called, but then falls out of scope and therefore is de-allocated when the method exits. The problem then arises when the line

viewMatrix = camera.updateCamera();

is called because the assignment is performed on the non-existent address of unit_mat, which is passed by value. I didn't see an assignment overload for QMatrix4x4 types so I worked around it by changing the updateCamera method to use pointers which are not automatically de-allocated when falling out of scope. I know, I know, watch for memory leaks... However, even doing that left me with the condition in #53. I can publish my patch for my workaround (although incomplete with that memory leak issue) if you'd like to see it although there's probably a better way to do it.

Can anyone confirm if this software works on Windows in its current state?

from awesomebump.

CodePhase avatar CodePhase commented on July 21, 2024

Just created a pull request fixing this issue. I may revisit it later for a better solution.

from awesomebump.

kmkolasinski avatar kmkolasinski commented on July 21, 2024

Yeah the reference '&' was a bad idea in that case. I think I did the common 'copy-paste' error :/
Sorry for that and thank you for Sherlock Holmes like solution!

from awesomebump.

CodePhase avatar CodePhase commented on July 21, 2024

fixed in PR #55.

from awesomebump.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.