[osg-users] [build] Problem with building OSG for Android GLES2.0

24 views
Skip to first unread message

Marc Sticksen

unread,
Sep 12, 2011, 5:51:37 AM9/12/11
to osg-...@lists.openscenegraph.org
Hi,

I´m trying to build OSG for Android with GLES2.0.

My cmake line looks like this:


Code:
cmake .. -DOSG_BUILD_PLATFORM_ANDROID=ON -DDYNAMIC_OPENTHREADS=OFF -DDYNAMIC_OPENSCENEGRAPH=OFF -DOSG_GL_DISPLAYLISTS_AVAILABLE=OFF -DOSG_GL_MATRICES_AVAILABLE=ON -DOSG_GL_VERTEX_FUNCS_AVAILABLE=ON -DOSG_GL_VERTEX_ARRAY_FUNCS_AVAILABLE=ON -DOSG_GL_FIXED_FUNCTION_AVAILABLE=OFF -DOSG_CPP_EXCEPTIONS_AVAILABLE=OFF -DOSG_GL1_AVAILABLE=OFF -DOSG_GL2_AVAILABLE=OFF -DOSG_GL3_AVAILABLE=OFF -DOSG_GLES1_AVAILABLE=OFF -DOSG_GLES2_AVAILABLE=ON -Dj=2

This seems to be good I guess, fixed function is off and only GLES2 is turned on. Now when I run make, following errors appear:


Code:
Compile++ thumb : osg <= ArgumentParser.cpp
In file included from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL2Extensions:26,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/Shader:25,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/StateAttribute:20,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/AlphaFunc:17,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/src/osg/AlphaFunc.cpp:14:
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL: In function 'void glLoadMatrix(const float*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:130: error: 'glLoadMatrixf' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL: In function 'void glMultMatrix(const float*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:131: error: 'glMultMatrixf' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL: In function 'void glLoadMatrix(const double*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:149: error: ISO C++ forbids declaration of 'type name' with no type
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:149: error: expected '>' before 'GLdouble'
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:149: error: expected '(' before 'GLdouble'
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:149: error: 'GLdouble' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:149: error: expected primary-expression before '>' token
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL: In function 'void glMultMatrix(const double*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:150: error: ISO C++ forbids declaration of 'type name' with no type
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:150: error: expected '>' before 'GLdouble'
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:150: error: expected '(' before 'GLdouble'
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:150: error: 'GLdouble' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:150: error: expected primary-expression before '>' token
make[3]: *** [/Users/stickbook/Downloads/OpenSceneGraph_svn/build_OGLES2/obj/local/armeabi/objs/osg/AlphaFunc..o] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL2Extensions:26,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/Shader:25,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/StateAttribute:20,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/StateSet:18,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/Node:19,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/Group:17,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/Transform:17,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/MatrixTransform:17,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/src/osg/AnimationPath.cpp:14:
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL: In function 'void glLoadMatrix(const float*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:130: error: 'glLoadMatrixf' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL: In function 'void glMultMatrix(const float*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:131: error: 'glMultMatrixf' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL: In function 'void glLoadMatrix(const double*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:149: error: ISO C++ forbids declaration of 'type name' with no type
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:149: error: expected '>' before 'GLdouble'
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:149: error: expected '(' before 'GLdouble'
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:149: error: 'GLdouble' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:149: error: expected primary-expression before '>' token
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL: In function 'void glMultMatrix(const double*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:150: error: ISO C++ forbids declaration of 'type name' with no type
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:150: error: expected '>' before 'GLdouble'
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:150: error: expected '(' before 'GLdouble'
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:150: error: 'GLdouble' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GL:150: error: expected primary-expression before '>' token
In file included from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/GraphicsContext:17,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/Texture:20,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/Camera:21,
from /Users/stickbook/Downloads/OpenSceneGraph_svn/src/osg/AnimationPath.cpp:16:
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::Vertex(float, float, float, float)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:545: error: 'glVertex4f' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::Color(float, float, float, float)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:555: error: 'glColor4f' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::Normal(float, float, float)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:565: error: 'glNormal3f' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::TexCoord(float, float, float, float)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:576: error: 'glTexCoord4f' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::setVertexPointer(GLint, GLenum, GLsizei, const GLvoid*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:646: error: 'GL_VERTEX_ARRAY' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:646: error: 'glEnableClientState' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:651: error: 'glVertexPointer' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::disableVertexPointer()':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:677: error: 'GL_VERTEX_ARRAY' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:677: error: 'glDisableClientState' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::setNormalPointer(GLenum, GLsizei, const GLvoid*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:737: error: 'GL_NORMAL_ARRAY' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:737: error: 'glEnableClientState' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:742: error: 'glNormalPointer' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::disableNormalPointer()':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:768: error: 'GL_NORMAL_ARRAY' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:768: error: 'glDisableClientState' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::setColorPointer(GLint, GLenum, GLsizei, const GLvoid*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:828: error: 'GL_COLOR_ARRAY' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:828: error: 'glEnableClientState' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:833: error: 'glColorPointer' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::disableColorPointer()':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:859: error: 'GL_COLOR_ARRAY' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:859: error: 'glDisableClientState' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::disableSecondaryColorPointer()':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:927: error: 'glDisableClientState' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::disableFogCoordPointer()':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:995: error: 'glDisableClientState' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::setTexCoordPointer(unsigned int, GLint, GLenum, GLsizei, const GLvoid*)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:1062: error: 'GL_TEXTURE_COORD_ARRAY' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:1062: error: 'glEnableClientState' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:1066: error: 'glTexCoordPointer' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::disableTexCoordPointer(unsigned int)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:1099: error: 'GL_TEXTURE_COORD_ARRAY' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:1099: error: 'glDisableClientState' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State: In member function 'void osg::State::disableTexCoordPointersAboveAndIncluding(unsigned int)':
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:1147: error: 'GL_TEXTURE_COORD_ARRAY' was not declared in this scope
/Users/stickbook/Downloads/OpenSceneGraph_svn/include/osg/State:1147: error: 'glDisableClientState' was not declared in this scope
make[3]: *** [/Users/stickbook/Downloads/OpenSceneGraph_svn/build_OGLES2/obj/local/armeabi/objs/osg/AnimationPath..o] Error 1
make[2]: *** [Android-OpenSceneGraph] Error 2
make[1]: *** [CMakeFiles/ndk.dir/all] Error 2
make: *** [all] Error 2

If I turn off everything but GLES2 and the BUILD_PLATFORM, it compiles...why is there a problem with the matrices and vertex arrays etc?

Thanks for helping...

Cheers,
Marc

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=42605#42605

_______________________________________________
osg-users mailing list
osg-...@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Mourad Boufarguine

unread,
Sep 13, 2011, 5:03:28 AM9/13/11
to osg-...@lists.openscenegraph.org
Hi Marc,

Take a look at this wiki page to see how to configure OSG for OpenGL ES 2 : http://www.openscenegraph.org/projects/osg/wiki/Community/OpenGL-ES

OSG_GL_VERTEX_FUNCS_AVAILABLE and OSG_GL_VERTEX_ARRAY_FUNCS_AVAILABLE should be disabled.

Cheers,
Mourad

 

Jorge Izquierdo Ciges

unread,
Sep 13, 2011, 9:54:51 AM9/13/11
to OpenSceneGraph Users
Quoting the wiki page:
If you don't know how to set GLES1/2 please read OpenGL-ES in OSG wiki.

Aditionally I seriosly suggest that you should read the GLES 2 spec document in Kronos ARB


2011/9/13 Mourad Boufarguine <mourad.bo...@gmail.com>

Marc Sticksen

unread,
Sep 13, 2011, 10:04:26 AM9/13/11
to osg-...@lists.openscenegraph.org
uhhh...shame on me, I just missed that little link! There´s just too much compressed information on this page. Thanks!

Cheers,
Marc

------------------
Read this topic online here:

http://forum.openscenegraph.org/viewtopic.php?p=42697#42697

Reply all
Reply to author
Forward
0 new messages