I have the following problem:
The library libopencv_java.so
compiled from OpenCV 2.3.1 with NDK6 works fine on Samsung Galaxy S, but not on Galaxy Tab.
Build setup:
-MacOS X
-NDK6
-build with neon
The library seems to fail on double->integer conversions.
It seems Galaxy Tab uses Nvidia Tegra 2 CPU. Recently there was a bug fixed in NDK that generated invalid code for Tegra 2 processors related to floating point instructions. Here is the quote from NDK r7c changelog:
This release of the NDK includes an important fix for Tegra2-based devices, and a few additional fixes and improvements:
Important bug fixes: Fixed GNU STL armeabi-v7a binaries to not crash on non-NEON devices. The files provided with NDK r7b were not configured properly, resulting in crashes on Tegra2-based devices and others when trying to use certain floating-point functions (e.g., cosf, sinf, expf).
So try recompiling OpenCV with at least NDK r7c.