Hi,
the proposed change in the Application.mk did have no influence on the outcome,
unfortunately. Hence, I reverted to the dirty trick of copying the
libgnustl-shared.so and libgnustl_static.a to the OSG_LIB directory. That did
get rid of the major body of errors, leaving just the following errors:
christian@PROMETHEUS:/media/christian/DATA/osgAndroid/org.openscenegraph.android$
${ANDROID_NDK}/ndk-build
[armeabi] Compile++ thumb: jniosg-gles1 <= JNIosgViewer.cpp
[armeabi] Compile++ thumb: jniosg-gles1 <= JNIosg.cpp
[armeabi] Compile++ thumb: jniosg-gles1 <= JNIosgDB.cpp
[armeabi] Compile++ thumb: jniosg-gles1 <= JNIosgUtil.cpp
[armeabi] Compile++ thumb: jniosg-gles1 <= JNIosgGA.cpp
[armeabi] Compile++ thumb: jniosg-gles1 <= JNIUtils.cpp
[armeabi] Compile++ thumb: jniosg-gles1 <= MultiViewNode.cpp
[armeabi] Compile++ thumb: jniosg-gles1 <= GLES2ShaderGenVisitor.cpp
[armeabi] SharedLibrary : libjniosg-gles1.so
/home/christian/android-install/lib/osgPlugins-3.3.7/libosgdb_serializers_osgparticle.a(RadialShooter.cpp.o):RadialShooter.cpp:function
osgParticle::range<float>::get_random() const: error: undefined reference to
'rand'
/home/christian/android-install/lib/osgPlugins-3.3.7/libosgdb_serializers_osgparticle.a(RadialShooter.cpp.o):RadialShooter.cpp:function
osgParticle::RadialShooter::shoot(osgParticle::Particle*) const: error:
undefined reference to 'rand'
/home/christian/android-install/lib/osgPlugins-3.3.7/libosgdb_serializers_osgparticle.a(RandomRateCounter.cpp.o):RandomRateCounter.cpp:function
osgParticle::RandomRateCounter::numParticlesToCreate(double) const: error:
undefined reference to 'rand'
/home/christian/android-install/lib/osgPlugins-3.3.7/libosgdb_serializers_osgparticle.a(SectorPlacer.cpp.o):SectorPlacer.cpp:function
osgParticle::SectorPlacer::place(osgParticle::Particle*) const: error:
undefined reference to 'rand'
/home/christian/android-install/lib/libosgText.a(Glyph.cpp.o):Glyph.cpp:function
osgText::GlyphTexture::apply(osg::State&) const: error: undefined reference to
'glGenerateMipmap'
/home/christian/android-install/lib/libosgDB.a(FileUtils.cpp.o):FileUtils.cpp:function
osgDB::fileType(std::string const&): error: undefined reference to 'stat64'
/home/christian/android-install/lib/libosgDB.a(FileUtils.cpp.o):FileUtils.cpp:function
osgDB::makeDirectory(std::string const&): error: undefined reference to
'stat64'
/home/christian/android-install/lib/libosgDB.a(FileUtils.cpp.o):FileUtils.cpp:function
osgDB::makeDirectory(std::string const&): error: undefined reference to
'stat64'
/home/christian/android-install/lib/libosg.a(Shader.cpp.o):Shader.cpp:function
osg::Shader::PerContextShader::compileShader(osg::State&): error: undefined
reference to 'glShaderBinary'
collect2: error: ld returned 1 exit status
make: *** [obj/local/armeabi/libjniosg-gles1.so] Error 1
The first part of the errors is related to a missing rand() function. This is
quite weird to me cause rand() is a core C function, so that should
theoretically compile anywhere and everywhere. No clue why it misses that
function.
Then, there are the two gl-related errors. The mipmap generation, I believe, is
part of the glu-library, which is not referred to by the GLES library file
(should that function be in the Android build in any case ?). The other one is
the glShaderBinary, which could be a GLES1-GLES2 glitch, I assume.
The third category are the stat64 errors, which are related (I strongly
believe) to some missing ifdefs for 32-bit - 64-bit compilation (as only the
newest android models and the r10c NDK support 64-bit compile and run).
Any idea how to get rid of these last errors ?
Thank you!
Cheers,
Christian
------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=63539#63539
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org