[Interest] Compilation issue for OpenGL ES2 on ARM/Linux
Andre Renaud
andre at bluewatersys.com
Wed Apr 10 06:19:37 CEST 2013
Hi,
I'm trying to cross compile Qt 4.8.4 for an ARM target, with OpenGL ES2
support.
I use the following configure line:
./configure -opensource -embedded arm -confirm-license -xplatform
qws/linux-arm-gnueabi-g++ -no-qt3support -prefix / -qt-mouse-tslib
-qt-gfx-linuxfb -qt-gfx-transformed -opengl es2 -no-pch -no-feature-CURSOR
-nomake examples -nomake demos -no-qt3support -no-multimedia
-plugin-gfx-powervr
However when building OpenGL I get the following errors:
make[1]: Entering directory
`/home/andre/work/connexionz/package-builder/build/qt-everywhere-opensource-src-4.8.4/src/gui'
arm-none-linux-gnueabi-g++ -c -pipe
-I/home/andre/work/connexionz/package-builder/staging//include -O2
-fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fPIC
-DQT_SHARED -DQT_BUILD_GUI_LIB -DQT_NO_USING_NAMESPACE
-DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT
-DQT_USE_QSTRINGBUILDER -DQT_NO_FONTCONFIG -DFT2_BUILD_LIBRARY
-DFT_CONFIG_OPTION_SYSTEM_ZLIB -DQT_NO_OPENTYPE -DQT_NO_STYLE_MAC
-DQT_NO_STYLE_WINDOWSVISTA -DQT_NO_STYLE_WINDOWSXP -DQT_NO_STYLE_GTK
-DQT_NO_STYLE_WINDOWSCE -DQT_NO_STYLE_WINDOWSMOBILE -DQT_NO_STYLE_S60
-DQ_INTERNAL_QAPP_SRC -DQT_HAVE_NEON -DQT_NO_DEBUG -DQT_NETWORK_LIB
-DQT_CORE_LIB -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE
-I../../mkspecs/qws/linux-arm-gnueabi-g++ -I. -I../../include/QtCore
-I../../include/QtNetwork -I../../include -I../../include/QtGui
-I.rcc/release-shared-emb-arm -Iimage -I../3rdparty/freetype/builds/unix
-I../3rdparty/freetype/src -I../3rdparty/freetype/include
-I../3rdparty/harfbuzz/src -Idialogs -I.moc/release-shared-emb-arm
-I.uic/release-shared-emb-arm -o .obj/release-shared-emb-arm/qegl.o
egl/qegl.cpp
egl/qegl.cpp: In static member function 'static void
QEglContextTracker::deref()':
egl/qegl.cpp:70:41: error: 'eglTerminate' was not declared in this scope
egl/qegl.cpp: In constructor 'QEglContext::QEglContext()':
egl/qegl.cpp:94:11: error: 'EGL_NO_CONTEXT' was not declared in this scope
egl/qegl.cpp:96:22: error: 'EGL_NO_SURFACE' was not declared in this scope
egl/qegl.cpp: In member function 'bool QEglContext::isValid() const':
egl/qegl.cpp:118:20: error: 'EGL_NO_CONTEXT' was not declared in this scope
egl/qegl.cpp: In function 'EGLConfig QEgl::defaultConfig(int, QEgl::API,
QEgl::ConfigOptions)':
egl/qegl.cpp:219:13: error: 'EGL_CONFIG_ID' was not declared in this scope
egl/qegl.cpp:223:77: error: 'eglChooseConfig' was not declared in this scope
egl/qegl.cpp:235:27: error: 'EGL_WINDOW_BIT' was not declared in this scope
egl/qegl.cpp:238:27: error: 'EGL_PIXMAP_BIT' was not declared in this scope
egl/qegl.cpp:241:27: error: 'EGL_PBUFFER_BIT' was not declared in this scope
egl/qegl.cpp:253:28: error: 'EGL_SURFACE_TYPE' was not declared in this
scope
egl/qegl.cpp:271:32: error: 'EGL_STENCIL_SIZE' was not declared in this
scope
egl/qegl.cpp:272:32: error: 'EGL_SAMPLE_BUFFERS' was not declared in this
scope
egl/qegl.cpp:275:32: error: 'EGL_DEPTH_SIZE' was not declared in this scope
egl/qegl.cpp:280:32: error: 'EGL_ALPHA_SIZE' was not declared in this scope
egl/qegl.cpp: In function 'EGLConfig QEgl::chooseConfig(const
QEglProperties*, QEgl::PixelFormatMatch)':
egl/qegl.cpp:296:70: error: 'eglChooseConfig' was not declared in this scope
egl/qegl.cpp:302:78: error: 'eglChooseConfig' was not declared in this scope
egl/qegl.cpp:312:80: error: 'eglChooseConfig' was not declared in this scope
egl/qegl.cpp:315:59: error: 'EGL_RED_SIZE' was not declared in this scope
egl/qegl.cpp:315:77: error: 'eglGetConfigAttrib' was not declared in this
scope
egl/qegl.cpp:316:59: error: 'EGL_GREEN_SIZE' was not declared in this scope
egl/qegl.cpp:317:59: error: 'EGL_BLUE_SIZE' was not declared in this scope
egl/qegl.cpp:318:59: error: 'EGL_ALPHA_SIZE' was not declared in this scope
egl/qegl.cpp: In member function 'bool
QEglContext::createContext(QEglContext*, const QEglProperties*)':
egl/qegl.cpp:389:46: error: 'EGL_NO_CONTEXT' was not declared in this scope
egl/qegl.cpp:392:98: error: 'eglCreateContext' was not declared in this
scope
egl/qegl.cpp:393:20: error: 'EGL_NO_CONTEXT' was not declared in this scope
egl/qegl.cpp:400:16: error: 'EGL_NO_CONTEXT' was not declared in this scope
egl/qegl.cpp:401:89: error: 'eglCreateContext' was not declared in this
scope
egl/qegl.cpp: In member function 'void
QEglContext::destroySurface(EGLSurface)':
egl/qegl.cpp:417:20: error: 'EGL_NO_SURFACE' was not declared in this scope
egl/qegl.cpp:420:45: error: 'eglDestroySurface' was not declared in this
scope
egl/qegl.cpp: In member function 'void QEglContext::destroyContext()':
egl/qegl.cpp:427:16: error: 'EGL_NO_CONTEXT' was not declared in this scope
egl/qegl.cpp:428:41: error: 'eglDestroyContext' was not declared in this
scope
egl/qegl.cpp:429:11: error: 'EGL_NO_CONTEXT' was not declared in this scope
egl/qegl.cpp: In member function 'bool
QEglContext::makeCurrent(EGLSurface)':
egl/qegl.cpp:435:16: error: 'EGL_NO_CONTEXT' was not declared in this scope
egl/qegl.cpp:440:20: error: 'EGL_NO_SURFACE' was not declared in this scope
egl/qegl.cpp:479:68: error: 'eglMakeCurrent' was not declared in this scope
egl/qegl.cpp: In member function 'bool QEglContext::doneCurrent()':
egl/qegl.cpp:489:16: error: 'EGL_NO_CONTEXT' was not declared in this scope
egl/qegl.cpp:493:22: error: 'EGL_NO_SURFACE' was not declared in this scope
egl/qegl.cpp:508:79: error: 'EGL_NO_CONTEXT' was not declared in this scope
egl/qegl.cpp:508:93: error: 'eglMakeCurrent' was not declared in this scope
egl/qegl.cpp: In member function 'bool
QEglContext::swapBuffers(EGLSurface)':
egl/qegl.cpp:527:15: error: 'EGL_NO_CONTEXT' was not declared in this scope
egl/qegl.cpp:530:54: error: 'eglSwapBuffers' was not declared in this scope
egl/qegl.cpp: In member function 'int QEglContext::configAttrib(int) const':
egl/qegl.cpp:571:79: error: 'eglGetConfigAttrib' was not declared in this
scope
egl/qegl.cpp:575:16: error: 'EGL_DONT_CARE' was not declared in this scope
egl/qegl.cpp: In function 'EGLDisplay QEgl::display()':
egl/qegl.cpp:591:29: error: 'EGL_NO_DISPLAY' was not declared in this scope
egl/qegl.cpp:593:44: error: 'eglGetDisplay' was not declared in this scope
egl/qegl.cpp:597:54: error: 'EGL_DEFAULT_DISPLAY' was not declared in this
scope
egl/qegl.cpp:604:43: error: 'eglInitialize' was not declared in this scope
egl/qegl.cpp:612:94: error: 'eglGetProcAddress' was not declared in this
scope
egl/qegl.cpp:618:115: error: 'eglGetProcAddress' was not declared in this
scope
egl/qegl.cpp: In function 'EGLSurface QEgl::createSurface(QPaintDevice*,
EGLConfig, const QEglProperties*)':
egl/qegl.cpp:683:16: error: 'EGL_NO_SURFACE' was not declared in this scope
egl/qegl.cpp:692:23: error: 'EGL_NO_SURFACE' was not declared in this scope
egl/qegl.cpp:730:82: error: 'eglCreateWindowSurface' was not declared in
this scope
egl/qegl.cpp:732:82: error: 'eglCreatePixmapSurface' was not declared in
this scope
egl/qegl.cpp:734:106: error: 'eglGetError' was not declared in this scope
egl/qegl.cpp: In function 'void QEgl::dumpAllConfigs()':
egl/qegl.cpp:774:47: error: 'eglGetConfigs' was not declared in this scope
egl/qegl.cpp:777:52: error: 'eglGetConfigs' was not declared in this scope
egl/qegl.cpp: In function 'QString QEgl::extensions()':
egl/qegl.cpp:787:56: error: 'EGL_EXTENSIONS' was not declared in this scope
egl/qegl.cpp:787:70: error: 'eglQueryString' was not declared in this scope
egl/qegl.cpp: In function 'bool QEgl::hasExtension(const char*)':
egl/qegl.cpp:795:46: error: 'EGL_EXTENSIONS' was not declared in this scope
egl/qegl.cpp:795:60: error: 'eglQueryString' was not declared in this scope
egl/qegl.cpp: In member function 'int QEglContext::configAttrib(int) const':
egl/qegl.cpp:576:1: warning: control reaches end of non-void function
[-Wreturn-type]
egl/qegl.cpp: In member function 'bool QEglContext::isValid() const':
egl/qegl.cpp:119:1: warning: control reaches end of non-void function
[-Wreturn-type]
make[1]: *** [.obj/release-shared-emb-arm/qegl.o] Error 1
make[1]: Leaving directory
`/home/andre/work/connexionz/package-builder/build/qt-everywhere-opensource-src-4.8.4/src/gui'
make: *** [sub-gui-make_default-ordered] Error 2
>From looking into the build a bit, it looks like QT_NO_EGL is defined which
means that the correct header files are not getting included. But I can't
quite work out where that definition is being made.
src/corelib/global/qconfig.h doesn't define it, neither does the
mkspecs/qws/linux-arm-gnueabi-g++/qmake.conf, or the build command line.
Any ideas what I've messed up here?
Regards,
Andre
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20130410/6399a621/attachment.html>
More information about the Interest
mailing list