Qt Forum

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Unsolved

    Update: Forum Guidelines & Code of Conduct


    Qt World Summit: Early-Bird Tickets

    Compile Qt4.7.1 for QNX and OpenGL ES2

    Installation and Deployment
    2
    2
    4449
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Y
      Yoobe last edited by

      Hello everybody,

      I would like to use Qt on QNX Neutrio 6.5. I found a porting of Qt for Qnx on this page : http://community.qnx.com/sf/wiki/do/viewPage/projects.qt/wiki/Downloads.

      The way to compile the source is by using their script : qnx-build.
      I saw that in this script the didn't enabled the OpenGL. I tried to enable it but I have many issues during the compilation. I fixed some of them and I am stucked at this error :

      When I compile QtGui or QtOpenGL I have re-declaration issue in the headers and missing some defines :

      @~/dev/qt-qnx-4.7.1/src/opengl$ colormake
      ntoarmv7-g++ -c -pipe -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQT_BUILD_OPENGL_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION -DQT_NO_FREETYPE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I../../mkspecs/unsupported/qws/qnx-armv7-g++ -I. -I../../include/QtCore -I../../include/QtGui -I../../include -I../../include/QtOpenGL -I.rcc/release-shared-emb-armv6 -I../3rdparty/harfbuzz/src -I.moc/release-shared-emb-armv6 -I/opt/qnx650/target/qnx6/usr/include -o .obj/release-shared-emb-armv6/qgl.o qgl.cpp
      In file included from /opt/qnx650/target/qnx6//usr/include/GLES/egl.h:4,
      from ../../include/QtGui/private/../../../src/gui/egl/qegl_p.h:64,
      from ../../include/QtGui/private/qegl_p.h:1,
      from qgl_p.h:68,
      from qgl.cpp:68:
      /opt/qnx650/target/qnx6//usr/include/GLES/gl.h:729: error: declaration of C function 'void glTexImage2D(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid*)' conflicts with
      /opt/qnx650/target/qnx6//usr/include/GLES2/gl2.h:578: error: previous declaration 'void glTexImage2D(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLenum, GLenum, const void*)' here
      In file included from qgl.cpp:83:
      ./qglframebufferobject.h:71: error: 'GL_RGBA8' was not declared in this scope
      ./qglframebufferobject.h:73: error: 'GL_RGBA8' was not declared in this scope
      qgl.cpp: In member function 'int QGLContextPrivate::maxTextureSize()':
      qgl.cpp:2641: error: 'GL_PROXY_TEXTURE_2D' was not declared in this scope
      qgl.cpp:2646: error: 'GL_TEXTURE_WIDTH' was not declared in this scope
      qgl.cpp:2646: error: 'glGetTexLevelParameteriv' was not declared in this scope
      qgl.cpp: In member function 'void QGLContext::drawTexture(const QPointF&, GLuint, GLenum)':
      qgl.cpp:3022: error: 'GL_TEXTURE_WIDTH' was not declared in this scope
      qgl.cpp:3022: error: 'glGetTexLevelParameteriv' was not declared in this scope
      qgl.cpp:3023: error: 'GL_TEXTURE_HEIGHT' was not declared in this scope
      qgl.cpp:3037: error: 'qDrawTextureRect' was not declared in this scope
      qgl.cpp: In member function 'virtual void QGLWidget::glDraw()':
      qgl.cpp:4453: error: 'glDrawBuffer' was not declared in this scope
      qgl.cpp: In member function 'void QGLWidget::qglClearColor(const QColor&) const':
      qgl.cpp:4525: error: 'glClearIndex' was not declared in this scope
      qgl.cpp:4527: error: 'glClearIndex' was not declared in this scope
      qgl.cpp: In function 'void qt_save_gl_state()':
      qgl.cpp:4671: error: 'GL_CLIENT_ALL_ATTRIB_BITS' was not declared in this scope
      qgl.cpp:4671: error: 'glPushClientAttrib' was not declared in this scope
      qgl.cpp:4672: error: 'GL_ALL_ATTRIB_BITS' was not declared in this scope
      qgl.cpp:4672: error: 'glPushAttrib' was not declared in this scope
      qgl.cpp: In function 'void qt_restore_gl_state()':
      qgl.cpp:4698: error: 'glPopAttrib' was not declared in this scope
      qgl.cpp:4699: error: 'glPopClientAttrib' was not declared in this scope
      qgl.cpp: In member function 'void QGLWidget::renderText(int, int, const QString&, const QFont&, int)':
      qgl.cpp:4791: error: 'glOrtho' was not declared in this scope
      qgl.cpp: In member function 'void QGLWidget::renderText(double, double, double, const QString&, const QFont&, int)':
      qgl.cpp:4863: error: 'glGetDoublev' was not declared in this scope
      qgl.cpp:4909: error: 'glOrtho' was not declared in this scope
      qgl.cpp:4916: error: 'glTranslated' was not declared in this scope
      make: *** [.obj/release-shared-emb-armv6/qgl.o] Error 1
      @

      I don't know how to solve this issue. If someone could compile the package, it would be nice to share with me the libs (armv7).

      Thanks.
      Baris

      Baris.

      1 Reply Last reply Reply Quote 0
      • A
        anluuvn last edited by

        Baris,

        I succeeded in building the qt4.7.1 for QNX6.5. I must modified opengl option in qnx-build script to support OpenGLESv2.
        You can contact me if you still need the libs (armv7)
        My email is: anluuvn@gmail.com

        1 Reply Last reply Reply Quote 0
        • First post
          Last post