Christian Kehl <Christian.Kehl@...> writes: > > Rafa Gaitan <rafa.gaitan <at> ...> writes: >
Hi Hi, so, I downloaded osgAndroid, imported the projects into my Eclipse. I like this more elegant way of jni-wrapping - comes close to what I've seen in OpenCV when compiling it for mobile. Then, I needed to rebuild the OpenSceneGraph 3.3.7, because osgAndroid's README.md says "only working with GLES 1.1 builds". okay, said - executed. I get the following errors already common to me when building OSG GLES 1.1: Linking CXX static library ../../../lib/libOpenThreads.a [ 0%] Built target OpenThreads [ 0%] Building CXX object src/osg/CMakeFiles/osg.dir/AlphaFunc.cpp.o In file included from /media/christian/DATA/OpenSceneGraph337/include/osg/GLDefines:25:0, from /media/christian/DATA/OpenSceneGraph337/include/osg/GLExtensions:18, from /media/christian/DATA/OpenSceneGraph337/include/osg/Shader:25, from /media/christian/DATA/OpenSceneGraph337/include/osg/StateAttribute:20, from /media/christian/DATA/OpenSceneGraph337/include/osg/AlphaFunc:17, from /media/christian/DATA/OpenSceneGraph337/src/osg/AlphaFunc.cpp:14: /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL: In function 'void glLoadMatrix(const float*)': /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:130:96: error: 'glLoadMatrixf' was not declared in this scope inline void glLoadMatrix(const float* mat) { glLoadMatrixf(static_cast<const GLfloat*>(mat)); } ^ /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL: In function 'void glMultMatrix(const float*)': /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:131:96: error: 'glMultMatrixf' was not declared in this scope inline void glMultMatrix(const float* mat) { glMultMatrixf(static_cast<const GLfloat*>(mat)); } ^ /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL: In function 'void glLoadMatrix(const double*)': /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:149:87: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive] inline void glLoadMatrix(const double* mat) { glLoadMatrixd(static_cast<const GLdouble*>(mat)); } ^ /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:149:87: error: expected '>' before 'GLdouble' /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:149:87: error: expected '(' before 'GLdouble' /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:149:87: error: 'GLdouble' was not declared in this scope /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:149:96: error: expected primary-expression before '>' token inline void glLoadMatrix(const double* mat) { glLoadMatrixd(static_cast<const GLdouble*>(mat)); } ^ /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL: In function 'void glMultMatrix(const double*)': /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:150:87: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive] inline void glMultMatrix(const double* mat) { glMultMatrixd(static_cast<const GLdouble*>(mat)); } ^ /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:150:87: error: expected '>' before 'GLdouble' /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:150:87: error: expected '(' before 'GLdouble' /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:150:87: error: 'GLdouble' was not declared in this scope /media/christian/DATA/OpenSceneGraph337/build/include/osg/GL:150:96: error: expected primary-expression before '>' token inline void glMultMatrix(const double* mat) { glMultMatrixd(static_cast<const GLdouble*>(mat)); } ^ /media/christian/DATA/OpenSceneGraph337/src/osg/AlphaFunc.cpp: In member function 'virtual void osg::AlphaFunc::apply(osg::State&) const': /media/christian/DATA/OpenSceneGraph337/src/osg/AlphaFunc.cpp:33:56: error: 'glAlphaFunc' was not declared in this scope glAlphaFunc((GLenum)_comparisonFunc,_referenceValue); ^ src/osg/CMakeFiles/osg.dir/build.make:57: recipe for target 'src/osg/CMakeFiles/osg.dir/AlphaFunc.cpp.o' failed make[2]: *** [src/osg/CMakeFiles/osg.dir/AlphaFunc.cpp.o] Error 1 CMakeFiles/Makefile2:249: recipe for target 'src/osg/CMakeFiles/osg.dir/all' failed make[1]: *** [src/osg/CMakeFiles/osg.dir/all] Error 2 Makefile:116: recipe for target 'all' failed make: *** [all] Error 2 just switching the -DOPENGL_PROFILE flag to GLES2 did have no effect on the error. So, I added the old flags to enforce GLES2 built. successfully. Then, I setup the paths of osgjni and android, as said in the readme, started osgsimple (don't know - do I have to compile osgjni and android ?!), and it broke ... any further suggestions ? Any idea where the GLES1 error still may originate from ? _______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org