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. |