From:
[email protected]
Some further investigations:
The last version of the provided qt library (libqt3c102-mt, 3.2.3-4) was built with "explicit" OpenGL support: An ldd on libqt-mt.so.3.2.3 shows the dependency
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x406e1000)
libaudio.so.2 => /usr/lib/libaudio.so.2 (0x40709000)
libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x4071e000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0x4076f000)
libz.so.1 => /usr/lib/libz.so.1 (0x40793000)
libGL.so.1 => /usr/lib/tls/libGL.so.1 (0x407a4000)
libXmu.so.6 => /usr/X11R6/lib/libXmu.so.6 (0x40801000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x40818000)
libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0x40820000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x40824000)
libXft.so.2 => /usr/lib/libXft.so.2 (0x4082d000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x4083f000)
libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x408ac000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x408bb000)
libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x40982000)
libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x4098b000)
libdl.so.2 => /lib/tls/libdl.so.2 (0x409a2000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0x409a5000)
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x409b4000)
libm.so.6 => /lib/tls/libm.so.6 (0x40a6f000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40a92000)
libc.so.6 => /lib/tls/libc.so.6 (0x40a9b000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0x40bd6000)
libGLcore.so.1 => /usr/lib/tls/libGLcore.so.1 (0x40bf6000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
Use ldd on the new qt library (libqt3c102-mt, 3.3.3-2) you get:
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x40702000)
libaudio.so.2 => /usr/lib/libaudio.so.2 (0x4072a000)
libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x4073f000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0x40790000)
libz.so.1 => /usr/lib/libz.so.1 (0x407b4000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x407c5000)
libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0x407cd000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x407d1000)
libXft.so.2 => /usr/lib/libXft.so.2 (0x407db000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x407ed000)
libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x4085a000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40868000)
libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x4092f000)
libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x40938000)
libdl.so.2 => /lib/tls/libdl.so.2 (0x40950000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0x40953000)
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40962000)
libm.so.6 => /lib/tls/libm.so.6 (0x40a1c000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40a3f000)
libc.so.6 => /lib/tls/libc.so.6 (0x40a48000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0x40b84000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
You'll notice that there is no "explicit" OpenGL dependency. The interesting file where the decision is made during compile time is
qgl_x11_p.h
There QT_DLOPEN_OPENGL is used to decide whether the dynamic usage of OpenGL should be chosen (resulting in QLibraryPrivate::loadLibrary (...) and so on)
or whether Qt is directly linked to the OpenGL library and qt_resolve_gl_symbols (...) becomes an inline function always returning true. The old qt version provided used the second approach as the ldd output I
posted indicates. The new version provided seems to have been built with the first approach resulting in problems concerning different OpenGL libraries always present on a system.
After all I still did not get a clue what exactly is going wrong because even when I ensure that the OpenGL library Qt will find is the correct one, I
still get the error.
WR
--
To UNSUBSCRIBE, email to
[email protected]
with a subject of "unsubscribe". Trouble? Contact
[email protected]
--- SoupGate-Win32 v1.05
* Origin: you cannot sedate... all the things you hate (1:229/2)