[PyQt] PyQT and EGLFS
sylgar at gmail.com
Sat Apr 8 09:08:03 BST 2017
I think my problem may be related to OPENGL detection in QtGui, just like it was in PyQT 5.8.1 and fixed in fixed in PyQT 5.8.2:
2017-03-29 Phil Thompson <phil at riverbankcomputing.com>
Fixes for the OpenGL detection needed by the incompatible
configuration changes in Qt v5.8.0.
The fix was to include QtGui instead of QtCore header in the configuration introspection tool source code (qtdetail), because QT_OPENGL* local configuration #defines are now in QtGui’s 5.8 header files starting with Qt 5.8, and no longer in QtCore.
Indeed I can still see for instance in ./qpy/QtGui/qpyopengl_version_functions.cpp that we have an #if defined(QT_OPENGL_ES_2) but still no QtGui header was included before.
That would explain why an Hello World program with PyQt works on my Mac (no OPENGL) but doesn’t work any more on a raspberry pi (using OPENGL ES 2.0).
Hope it will help fix this
> Le 7 avr. 2017 à 17:44, Sylvain Garrigues <sylgar at gmail.com> a écrit :
> I used to run PyQT fine with Qt 5.6 and the EGLFS QPA on my Raspberry Pi. I have updated to QT 5.8 and latest SIP and PyQT which cross compile fine, except that my program is no longer showing any output on the connected screen.
> I added all the debug in QT_LOGGING_RULES, enabled QT_QPA_EGLFS_DEBUG eglfs specific debug, everything looks normal and the console output is the same as the equivalent C++ app, only I have TV output with the C++ version, and none with the PyQt5 version.
> Same result with a basic hello world and just a main window widget. Appears on my TV with C++ (without PyQT), doesn’t appear on TV with PyQT, although log says it is rendering to OPENGL window.
> My program appears fine on my Mac, so I’m wondering what’s so specific about Raspberry Pi and PyQt :-(
> Any idea what’s wrong?
More information about the PyQt