qopenglfunctions are not defined



  • Hi everyone,

    I'm making a porting from Linux-x86 with Qt 5.4 to Android with Qt 5.7. In this project I had to use GameKit + OGRE. After several days, I could finally compile OGRE v1.9 and GameKit for Android. Now, when I try to compile my project I receive many errors from undeclared methods that belong to qopenglfunctions.

    When I include <QOpenGLContext> and <QOpenGLFunctions> the problems appear. I tried to add "gui" and "opengl" module but wasn't successful. I also tried to link libQt5OpenGL.so but the methods weren't there.

    Do you have any idea how to solve this? I left a part from the compile output from these errors

    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glBindTexture(GLenum, GLuint)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:595:5: error: '::glBindTexture' has not been declared
         ::glBindTexture(target, texture);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glBlendFunc(GLenum, GLenum)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:606:5: error: '::glBlendFunc' has not been declared
         ::glBlendFunc(sfactor, dfactor);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glClear(GLbitfield)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:617:5: error: '::glClear' has not been declared
         ::glClear(mask);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glClearColor(GLclampf, GLclampf, GLclampf, GLclampf)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:628:5: error: '::glClearColor' has not been declared
         ::glClearColor(red, green, blue, alpha);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glClearStencil(GLint)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:639:5: error: '::glClearStencil' has not been declared
         ::glClearStencil(s);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glColorMask(GLboolean, GLboolean, GLboolean, GLboolean)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:650:5: error: '::glColorMask' has not been declared
         ::glColorMask(red, green, blue, alpha);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glCopyTexImage2D(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:661:5: error: '::glCopyTexImage2D' has not been declared
         ::glCopyTexImage2D(target, level, internalformat, x, y, width,height, border);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glCopyTexSubImage2D(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:672:5: error: '::glCopyTexSubImage2D' has not been declared
         ::glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glCullFace(GLenum)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:683:5: error: '::glCullFace' has not been declared
         ::glCullFace(mode);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glDeleteTextures(GLsizei, const GLuint*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:694:5: error: '::glDeleteTextures' has not been declared
         ::glDeleteTextures(n, textures);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glDepthFunc(GLenum)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:705:5: error: '::glDepthFunc' has not been declared
         ::glDepthFunc(func);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glDepthMask(GLboolean)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:716:5: error: '::glDepthMask' has not been declared
         ::glDepthMask(flag);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glDisable(GLenum)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:727:5: error: '::glDisable' has not been declared
         ::glDisable(cap);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glDrawArrays(GLenum, GLint, GLsizei)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:738:5: error: '::glDrawArrays' has not been declared
         ::glDrawArrays(mode, first, count);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glDrawElements(GLenum, GLsizei, GLenum, const GLvoid*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:749:5: error: '::glDrawElements' has not been declared
         ::glDrawElements(mode, count, type, indices);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glEnable(GLenum)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:760:5: error: '::glEnable' has not been declared
         ::glEnable(cap);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glFinish()':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:771:5: error: '::glFinish' has not been declared
         ::glFinish();
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glFlush()':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:782:5: error: '::glFlush' has not been declared
         ::glFlush();
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glFrontFace(GLenum)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:793:5: error: '::glFrontFace' has not been declared
         ::glFrontFace(mode);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glGenTextures(GLsizei, GLuint*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:804:5: error: '::glGenTextures' has not been declared
         ::glGenTextures(n, textures);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glGetBooleanv(GLenum, GLboolean*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:815:5: error: '::glGetBooleanv' has not been declared
         ::glGetBooleanv(pname, params);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'GLenum QOpenGLFunctions::glGetError()':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:826:21: error: '::glGetError' has not been declared
         GLenum result = ::glGetError();
                         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glGetFloatv(GLenum, GLfloat*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:837:5: error: '::glGetFloatv' has not been declared
         ::glGetFloatv(pname, params);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glGetIntegerv(GLenum, GLint*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:848:5: error: '::glGetIntegerv' has not been declared
         ::glGetIntegerv(pname, params);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'const GLubyte* QOpenGLFunctions::glGetString(GLenum)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:859:29: error: '::glGetString' has not been declared
         const GLubyte *result = ::glGetString(name);
                                 ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glGetTexParameterfv(GLenum, GLenum, GLfloat*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:871:5: error: '::glGetTexParameterfv' has not been declared
         ::glGetTexParameterfv(target, pname, params);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glGetTexParameteriv(GLenum, GLenum, GLint*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:882:5: error: '::glGetTexParameteriv' has not been declared
         ::glGetTexParameteriv(target, pname, params);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glHint(GLenum, GLenum)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:893:5: error: '::glHint' has not been declared
         ::glHint(target, mode);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'GLboolean QOpenGLFunctions::glIsEnabled(GLenum)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:904:24: error: '::glIsEnabled' has not been declared
         GLboolean result = ::glIsEnabled(cap);
                            ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'GLboolean QOpenGLFunctions::glIsTexture(GLuint)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:916:24: error: '::glIsTexture' has not been declared
         GLboolean result = ::glIsTexture(texture);
                            ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glLineWidth(GLfloat)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:928:5: error: '::glLineWidth' has not been declared
         ::glLineWidth(width);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glPixelStorei(GLenum, GLint)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:939:5: error: '::glPixelStorei' has not been declared
         ::glPixelStorei(pname, param);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glPolygonOffset(GLfloat, GLfloat)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:950:5: error: '::glPolygonOffset' has not been declared
         ::glPolygonOffset(factor, units);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glReadPixels(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoid*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:961:5: error: '::glReadPixels' has not been declared
         ::glReadPixels(x, y, width, height, format, type, pixels);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glScissor(GLint, GLint, GLsizei, GLsizei)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:972:5: error: '::glScissor' has not been declared
         ::glScissor(x, y, width, height);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glStencilFunc(GLenum, GLint, GLuint)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:983:5: error: '::glStencilFunc' has not been declared
         ::glStencilFunc(func, ref, mask);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glStencilMask(GLuint)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:994:5: error: '::glStencilMask' has not been declared
         ::glStencilMask(mask);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glStencilOp(GLenum, GLenum, GLenum)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:1005:5: error: '::glStencilOp' has not been declared
         ::glStencilOp(fail, zfail, zpass);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glTexImage2D(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:1016:5: error: '::glTexImage2D' has not been declared
         ::glTexImage2D(target, level, internalformat, width,height, border, format, type, pixels);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glTexParameterf(GLenum, GLenum, GLfloat)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:1027:5: error: '::glTexParameterf' has not been declared
         ::glTexParameterf(target, pname, param);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glTexParameterfv(GLenum, GLenum, const GLfloat*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:1038:5: error: '::glTexParameterfv' has not been declared
         ::glTexParameterfv(target, pname, params);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glTexParameteri(GLenum, GLenum, GLint)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:1049:5: error: '::glTexParameteri' has not been declared
         ::glTexParameteri(target, pname, param);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glTexParameteriv(GLenum, GLenum, const GLint*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:1060:5: error: '::glTexParameteriv' has not been declared
         ::glTexParameteriv(target, pname, params);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glTexSubImage2D(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const GLvoid*)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:1071:5: error: '::glTexSubImage2D' has not been declared
         ::glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
         ^
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h: In member function 'void QOpenGLFunctions::glViewport(GLint, GLint, GLsizei, GLsizei)':
    /opt/Qt5.7.0/5.7/android_armv7/include/QtGui/qopenglfunctions.h:1082:5: error: '::glViewport' has not been declared
         ::glViewport(x, y, width, height);
         ^
    


  • Ok... if I change the files gl2.h, gl2ext.h and gl2platform.h (from OGRE/RenderSystems/GLES2) for the ones that come with Android-NDK the error disappears.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.