Wrong .so name in Android
-
I built the Libraw library for Android and tested it with a simple Java and Jni application.
Now I'm trying to use the same Libraw library in my Qt application but I get the following error during application start:@
D/dalvikvm( 1037): Trying to load lib /data/app-lib/org.qtproject.example.LibrawTest-1/libraw.so 0x41f95278
D/dalvikvm( 1037): Added shared lib /data/app-lib/org.qtproject.example.LibrawTest-1/libraw.so 0x41f95278
D/dalvikvm( 1037): No JNI_OnLoad found in /data/app-lib/org.qtproject.example.LibrawTest-1/libraw.so 0x41f95278, skipping init
D/dalvikvm( 1037): Trying to load lib /data/app-lib/org.qtproject.example.LibrawTest-1/libLibrawTest.so 0x41f95278
E/dalvikvm( 1037): dlopen("/data/app-lib/org.qtproject.example.LibrawTest-1/libLibrawTest.so") failed: dlopen failed: could not load library "libraw.so.10" needed by "libLibrawTest.so"; caused by library "libraw.so.10" not found
D/AndroidRuntime( 1037): Shutting down VM
W/dalvikvm( 1037): threadid=1: thread exiting with uncaught exception (group=0x4183c700)
E/AndroidRuntime( 1037): FATAL EXCEPTION: main
E/AndroidRuntime( 1037): java.lang.UnsatisfiedLinkError: dlopen failed: could not load library "libraw.so.10" needed by "libLibrawTest.so"; caused by library "libraw.so.10" not found
E/AndroidRuntime( 1037): at java.lang.Runtime.loadLibrary(Runtime.java:361)
E/AndroidRuntime( 1037): at java.lang.System.loadLibrary(System.java:525)
E/AndroidRuntime( 1037): at org.qtproject.qt5.android.bindings.QtActivity.loadApplication(QtActivity.java:209)
E/AndroidRuntime( 1037): at org.qtproject.qt5.android.bindings.QtActivity.startApp(QtActivity.java:495)
E/AndroidRuntime( 1037): at org.qtproject.qt5.android.bindings.QtActivity.onCreate(QtActivity.java:700)
E/AndroidRuntime( 1037): at android.app.Activity.performCreate(Activity.java:5133)
E/AndroidRuntime( 1037): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
E/AndroidRuntime( 1037): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)
E/AndroidRuntime( 1037): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
E/AndroidRuntime( 1037): at android.app.ActivityThread.access$600(ActivityThread.java:141)
E/AndroidRuntime( 1037): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
E/AndroidRuntime( 1037): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 1037): at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime( 1037): at android.app.ActivityThread.main(ActivityThread.java:5103)
E/AndroidRuntime( 1037): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 1037): at java.lang.reflect.Method.invoke(Method.java:525)
E/AndroidRuntime( 1037): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
E/AndroidRuntime( 1037): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
E/AndroidRuntime( 1037): at dalvik.system.NativeStart.main(Native Method)
@So first the shared library libraw.so is loaded but libLibrawTest.so tryes to use libraw.so.10.
I'm trying this with Qt-5.2.0-beta1 on a Linux machine.
Is there any solution for this?