| 1 | | I've exactly the same problem. The program runs fine when '3D acceleration' is switched off in the vm settings. |
| 2 | | |
| 3 | | {{{ |
| 4 | | Host: |
| 5 | | Windows 7 x64 |
| 6 | | Radeon R7 250 |
| 7 | | |
| 8 | | Guest: |
| 9 | | Linux arch-vm 3.18.6-1-ARCH #1 SMP PREEMPT Sat Feb 7 08:44:05 CET 2015 x86_64 GNU/Linux |
| 10 | | |
| 11 | | VirtualBox: |
| 12 | | 4.3.24 |
| 13 | | |
| 14 | | }}} |
| 15 | | |
| 16 | | I've compiled the Qt with debug symbols and got the following backtrace from qmlscene. |
| 17 | | |
| 18 | | {{{ |
| 19 | | #0 0x00007ffff4d494b7 in raise () from /usr/lib/libc.so.6 |
| 20 | | #1 0x00007ffff4d4a88a in abort () from /usr/lib/libc.so.6 |
| 21 | | #2 0x00007ffff5e38460 in qt_message_fatal (context=..., message=...) at /home/wojtek/banana-pro/qt5/qtbase/src/corelib/global/qlogging.cpp:1422 |
| 22 | | #3 0x00007ffff5e34e00 in QMessageLogger::fatal (this=0x7fffffffd3b0, msg=0x7fffee5e64c1 "Could not initialize GLX") at /home/wojtek/banana-pro/qt5/qtbase/src/corelib/global/qlogging.cpp:643 |
| 23 | | #4 0x00007fffee590d75 in createDummyWindow (dpy=0x4296d0, config=0x5e50f0, screenNumber=0, rootWin=373) at /home/wojtek/banana-pro/qt5/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp:103 |
| 24 | | #5 0x00007fffee591d3e in QGLXContext::init (this=0x454090, screen=0x438cc0, share=0x0) at /home/wojtek/banana-pro/qt5/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp:294 |
| 25 | | #6 0x00007fffee59113f in QGLXContext::QGLXContext (this=0x454090, screen=0x438cc0, format=..., share=0x0, nativeHandle=...) |
| 26 | | at /home/wojtek/banana-pro/qt5/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp:170 |
| 27 | | #7 0x00007fffee55b083 in QXcbIntegration::createPlatformOpenGLContext (this=0x41d470, context=0x44d270) at /home/wojtek/banana-pro/qt5/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:254 |
| 28 | | #8 0x00007ffff6ae00fc in QOpenGLContext::create (this=0x44d270) at /home/wojtek/banana-pro/qt5/qtbase/src/gui/kernel/qopenglcontext.cpp:597 |
| 29 | | #9 0x00007ffff6a959ed in QGuiApplicationPrivate::init (this=0x41a000) at /home/wojtek/banana-pro/qt5/qtbase/src/gui/kernel/qguiapplication.cpp:1295 |
| 30 | | #10 0x00007ffff6a92c6f in QGuiApplication::QGuiApplication (this=0x7fffffffda00, p=...) at /home/wojtek/banana-pro/qt5/qtbase/src/gui/kernel/qguiapplication.cpp:561 |
| 31 | | #11 0x00007ffff71c7193 in QApplication::QApplication (this=0x7fffffffda00, argc=@0x7fffffffd8ec: 1, argv=0x7fffffffe008, _internal=328706) |
| 32 | | at /home/wojtek/banana-pro/qt5/qtbase/src/widgets/kernel/qapplication.cpp:562 |
| 33 | | #12 0x0000000000405427 in main (argc=1, argv=0x7fffffffe008) at /home/wojtek/banana-pro/qt5/qtdeclarative/tools/qmlscene/main.cpp:412 |
| 34 | | }}} |
| 35 | | |
| 36 | | The problem seems to be in the following part of code (qglxintegration.cpp:103): |
| 37 | | |
| 38 | | {{{ |
| 39 | | XVisualInfo *visualInfo = glXGetVisualFromFBConfig(dpy, config); |
| 40 | | if (!visualInfo) |
| 41 | | qFatal("Could not initialize GLX"); |
| 42 | | }}} |
| 43 | | |
| 44 | | I think the contents of the dpy are: |
| 45 | | |
| 46 | | {{{ |
| 47 | | {ext_data = 0x0, free_funcs = 0x42aa00, fd = 3, conn_checker = 0, proto_major_version = 11, proto_minor_version = 0, vendor = 0x428890 "The X.Org Foundation", resource_base = 41943040, |
| 48 | | resource_mask = 2097151, resource_id = 0, resource_shift = 0, resource_alloc = 0x7ffff42a5590 <_XAllocID>, byte_order = 0, bitmap_unit = 32, bitmap_pad = 32, bitmap_bit_order = 0, nformats = 7, |
| 49 | | pixmap_format = 0x42aa50, vnumber = 11, release = 11701000, head = 0x0, tail = 0x0, qlen = 0, last_request_read = 395, request = 395, last_req = 0x7ffff45a39c0 "", buffer = 0x430a50 "\217", |
| 50 | | bufptr = 0x430a50 "\217", bufmax = 0x434a50 "", max_request_size = 65535, db = 0x0, synchandler = 0x0, display_name = 0x428ad0 ":0", default_screen = 0, nscreens = 1, screens = 0x42ab00, motion_buffer = 256, |
| 51 | | flags = 0, min_keycode = 8, max_keycode = 255, keysyms = 0x0, modifiermap = 0x0, keysyms_per_keycode = 0, |
| 52 | | xdefaults = 0x436720 "Xft.dpi:\t96\nXft.antialias:\t1\nXft.hinting:\t1\nXft.hintstyle:\thintmedium\nXft.rgba:\tnone\n", scratch_buffer = 0x0, scratch_length = 0, ext_number = 7, ext_procs = 0x4541a0, |
| 53 | | event_vec = {0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a70d0 <_XWireToEvent> <repeats 33 times>, 0x7ffff45b1ec0, |
| 54 | | 0x7ffff42a7090 <_XUnknownWireEvent> <repeats 30 times>, 0x7fffee313190 <repeats 17 times>, 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42fb9c0, |
| 55 | | 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff0d3d1b0, |
| 56 | | 0x7ffff42a7090 <_XUnknownWireEvent> <repeats 12 times>, 0x7ffff5b1fc50 <repeats 17 times>, 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a7090 <_XUnknownWireEvent>, |
| 57 | | 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a7090 <_XUnknownWireEvent>, 0x7ffff42a7090 <_XUnknownWireEvent>}, wire_vec = {0x7ffff42a70c0 <_XUnknownNativeEvent>, |
| 58 | | 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x0 <repeats 33 times>, 0x7ffff45b1e40, 0x7ffff42a70c0 <_XUnknownNativeEvent> <repeats 30 times>, 0x7fffee30e8c0 <repeats 17 times>, |
| 59 | | 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff42a70c0 <_XUnknownNativeEvent>, |
| 60 | | 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff0d3d0e0, 0x7ffff42a70c0 <_XUnknownNativeEvent> <repeats 12 times>, |
| 61 | | 0x7ffff5b1fc40 <repeats 17 times>, 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff42a70c0 <_XUnknownNativeEvent>, |
| 62 | | 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff42a70c0 <_XUnknownNativeEvent>, 0x7ffff42a70c0 <_XUnknownNativeEvent>}, lock_meaning = 0, lock = 0x428b50, async_handlers = 0x0, bigreq_size = 4194303, |
| 63 | | lock_fns = 0x4287d0, idlist_alloc = 0x7ffff42a55e0 <_XAllocIDs>, key_bindings = 0x0, cursor_font = 0, atoms = 0x0, mode_switch = 0, num_lock = 0, context_db = 0x0, error_vec = 0x0, cms = {defaultCCCs = 0x0, |
| 64 | | clientCmaps = 0x0, perVisualIntensityMaps = 0x0}, im_filters = 0x0, qfree = 0x0, next_event_serial_num = 1, flushes = 0x0, im_fd_info = 0x0, im_fd_length = 0, conn_watchers = 0x0, watcher_count = 0, |
| 65 | | filedes = 0x42a9d0 "\003", savedsynchandler = 0x0, resource_max = 2097146, xcmisc_opcode = 0, xkb_info = 0x436780, trans_conn = 0x0, xcb = 0x428730, next_cookie = 0, generic_event_vec = {0x0, 0x0, 0x0, |
| 66 | | 0x7fffee314260, 0x0 <repeats 124 times>}, generic_event_copy_vec = {0x0, 0x0, 0x0, 0x7fffee312670, 0x0 <repeats 124 times>}, cookiejar = 0x0} |
| 67 | | }}} |
| 68 | | |
| 69 | | I still have to figure out how to get contents of config variable as gdb gives me <incomplete type> when I try to print it. |
| 70 | | |
| 71 | | Please let me know if I can further help. I'd really like to see this problem fixed. |