Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Qt5.1 build error on Odroid when using -opengl es2



  • Hi,

    I get errors while building Qt5.1 on Odroid running Xbuntu when I use the option -opengl es2

    I configure like this
    @
    ./configure -developer-build -opensource -nomake examples -nomake tests -no-pch -qt-xcb -DMESA_EGL_NO_X11_HEADERS -opengl es2
    @

    The error I get looks like this:
    @
    .obj/debug-shared/qxcbintegration.o: In function QEGLXcbPlatformContext': /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:175: undefined reference toQEGLPlatformContext::QEGLPlatformContext(QSurfaceFormat const&, QPlatformOpenGLContext*, void*, unsigned int)'
    .obj/debug-shared/qxcbintegration.o: In function QXcbIntegration::createPlatformOffscreenSurface(QOffscreenSurface*) const': /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:243: undefined reference toQEGLPbuffer::QEGLPbuffer(void*, QSurfaceFormat const&, QOffscreenSurface*)'
    .obj/debug-shared/qxcbintegration.o: In function QEGLXcbPlatformContext::~QEGLXcbPlatformContext()': /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:169: undefined reference toQEGLPlatformContext::~QEGLPlatformContext()'
    .obj/debug-shared/qxcbintegration.o: In function ~QEGLXcbPlatformContext': /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:169: undefined reference toQEGLPlatformContext::~QEGLPlatformContext()'
    .obj/debug-shared/qxcbintegration.o: In function QEGLXcbPlatformContext::swapBuffers(QPlatformSurface*)': /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:183: undefined reference toQEGLPlatformContext::swapBuffers(QPlatformSurface*)'
    .obj/debug-shared/qxcbintegration.o: In function QEGLXcbPlatformContext::makeCurrent(QPlatformSurface*)': /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:190: undefined reference toQEGLPlatformContext::makeCurrent(QPlatformSurface*)'
    .obj/debug-shared/qxcbintegration.o: In function QEGLXcbPlatformContext::doneCurrent()': /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:198: undefined reference toQEGLPlatformContext::doneCurrent()'
    .obj/debug-shared/qxcbintegration.o:(.data.rel.ro._ZTI22QEGLXcbPlatformContext[_ZTI22QEGLXcbPlatformContext]+0x8): undefined reference to typeinfo for QEGLPlatformContext' .obj/debug-shared/qxcbintegration.o:(.data.rel.ro._ZTV22QEGLXcbPlatformContext[_ZTV22QEGLXcbPlatformContext]+0x10): undefined reference toQEGLPlatformContext::format() const'
    .obj/debug-shared/qxcbintegration.o:(.data.rel.ro._ZTV22QEGLXcbPlatformContext[_ZTV22QEGLXcbPlatformContext]+0x2c): undefined reference to QEGLPlatformContext::getProcAddress(QByteArray const&)' .obj/debug-shared/qxcbwindow.o: In functionQXcbWindow::eglSurface() const':
    /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbwindow.cpp:1414: undefined reference to q_configFromGLFormat(void*, QSurfaceFormat const&, bool, int)' .obj/debug-shared/qxcbwindow.o: In functionQXcbWindow::create()':
    /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbwindow.cpp:293: undefined reference to q_configFromGLFormat(void*, QSurfaceFormat const&, bool, int)' /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbwindow.cpp:294: undefined reference toq_glFormatFromConfig(void*, void*, QSurfaceFormat const&)'
    /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbwindow.cpp:296: undefined reference to QXlibEglIntegration::getCompatibleVisualId(_XDisplay*, void*, void*)' .obj/debug-shared/qxcbnativeinterface.o: In functionQXcbNativeInterface::eglContextForContext(QOpenGLContext*)':
    /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb/qxcbnativeinterface.cpp:297: undefined reference to QEGLPlatformContext::eglContext() const' collect2: error: ld returned 1 exit status make[6]: *** [../../../../plugins/platforms/libqxcb.so] Error 1 make[6]: Leaving directory/home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb'
    make[5]: *** [sub-xcb-plugin-pro-make_first-ordered] Error 2
    make[5]: Leaving directory /home/odroid/dev/qt5/qtbase/src/plugins/platforms/xcb' make[4]: *** [sub-xcb-make_first] Error 2 make[4]: Leaving directory/home/odroid/dev/qt5/qtbase/src/plugins/platforms'
    make[3]: *** [sub-platforms-make_first] Error 2
    make[3]: Leaving directory /home/odroid/dev/qt5/qtbase/src/plugins' make[2]: *** [sub-plugins-make_first] Error 2 make[2]: Leaving directory/home/odroid/dev/qt5/qtbase/src'
    make[1]: *** [sub-src-make_first] Error 2
    make[1]: Leaving directory `/home/odroid/dev/qt5/qtbase'
    make: *** [module-qtbase-make_first] Error 2
    @
    So undefined reference to QEGLPlatformContext::QEGLPlatformContext(). Am I missing some dependencies or is there something else in my setup which could be missing or wrongly setup?
    Any help is appreciated.


Log in to reply