Opened 13 years ago

Closed 13 years ago

#1946 closed defect (fixed)

OpenGL not supported by QT/Embedded

Reported by: anonymous Owned by: Isaac Richards
Priority: minor Milestone: unknown
Component: mythtv Version:
Severity: medium Keywords:
Cc: Ticket locked: no

Description

With the new mythui code, I get a linking problem when building with QT/Embedded due to the lack of OpenGL (see also http://www.gossamer-threads.com/lists/mythtv/dev/163597)

Could OpenGL be disabled when building for DirectFB ? Or is it possible to compile with regular QT and DirectFB ?

ccache g++ -o mythtv main.o -L/usr/qt/3-embedded/lib -L../../libs/libmyth -L../../libs/libmythtv -L../../libs/libavutil -L../../libs/libavcodec -L../../libs/libavformat -L../../libs/libmythfreemheg -L../../libs/libmythui -L../../libs/libmythupnp -lmythtv-0.19 -lmythavformat-0.19 -lmythavutil-0.19 -lmythavcodec-0.19 -lmythfreemheg-0.19 -lmythupnp-0.19 -lmyth-0.19 -lmythui-0.19 -lfreetype -lmp3lame -lasound -L/usr/lib -ldirectfb -lfusion -ldirect -lz -ldl -L/usr/X11R6/lib -lqte-mt -lpthread ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::updateGL()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::qt_emit(int, QUObject*)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::initializeOverlayGL()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::QGLWidget[not-in-charge](QWidget*, char const*, QGLWidget const*, unsigned)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::setFormat(QGLFormat const&)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::resizeGL(int, int)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::initializeGL()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::glInit()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::setMouseTracking(bool)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::resizeOverlayGL(int, int)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::grabFrameBuffer(bool)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::qt_cast(char const*)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::renderPixmap(int, int, bool)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::updateOverlayGL()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::resizeEvent(QResizeEvent*)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::makeCurrent()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::qt_property(int, int, QVariant*)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::makeOverlayCurrent()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::setContext(QGLContext*, QGLContext const*, bool)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::swapBuffers()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::~QGLWidget [not-in-charge]()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `typeinfo for QGLWidget' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::paintGL()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::reparent(QWidget*, unsigned, QPoint const&, bool)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::qt_invoke(int, QUObject*)' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::paintOverlayGL()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::glDraw()' ../../libs/libmythui/libmythui-0.19.so: undefined reference to `QGLWidget::staticMetaObject()'

Change History (2)

comment:1 Changed 13 years ago by anonymous

Disabled compilation of and references to mythpainter_ogl, but mythmainwindow is still referencing QGLWidget.

http://doc.trolltech.com/4.1/qtopengl.html#details states clearly under Warning that there is no OpenGL support. It would be so great if we could just skip the qvfb altogether and use DirectFB, which has OpenGL support !

comment:2 Changed 13 years ago by Isaac Richards

Resolution: fixed
Status: newclosed

(In [10552]) Make the opengl part of mythui compile-time optional (is turned on for X11 only now).

Involves nasty cheating to workaround moc not doing ifdefs.

Might want to do a distclean, but it worked for me without it. Apologies if I break the osx-packager.pl script.

Fixes #1432 and #1946.

Note: See TracTickets for help on using tickets.