Forums - dlopen failed: library "libcdsprpc_system.so" not found

5 posts / 0 new
Last post
dlopen failed: library "libcdsprpc_system.so" not found
k.ymmr
Join Date: 7 Mar 21
Posts: 3
Posted: Mon, 2021-07-12 17:06
Hello
 
I tried Android app with c++ SNPE on SDM660.
When execute apk, system is not able to load libcdsprpc_system.so file that located on SDM660's system/lib64.
 

E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.askey.aiservice.trvd, PID: 8129
java.lang.UnsatisfiedLinkError: dlopen failed: library "libcdsprpc_system.so" not found
at java.lang.Runtime.loadLibrary0(Runtime.java:1016)
at java.lang.System.loadLibrary(System.java:1669)
at com.test.aiservice.cpptry.MainService.<clinit>(MainService.java:850)
at java.lang.Class.newInstance(Native Method)
at android.app.AppComponentFactory.instantiateService(AppComponentFactory.java:103)
at androidx.core.app.CoreComponentFactory.instantiateService(CoreComponentFactory.java:68)
at android.app.ActivityThread.handleCreateService(ActivityThread.java:3553)
at android.app.ActivityThread.access$1300(ActivityThread.java:201)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1673)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6746)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
 
Can any one give me a hand to solve this problem?

 

  • Up0
  • Down0
ss.pandiri
Join Date: 29 May 18
Posts: 33
Posted: Mon, 2021-07-12 23:39

Can you please check if the lnk to libcdsprpc_system.so exists? if appropriate link to the shared library already exists pls add the path system/lib64 to LD_LIBRARY_PATH environment variable and build (edited) again ex: export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your/custom/path/

  • Up0
  • Down0
k.ymmr
Join Date: 7 Mar 21
Posts: 3
Posted: Tue, 2021-07-13 04:41

Thank you for replay to me.

I have added "$LD_LIBRARY_PATH" like below.
I try run again, but still same Error occured.

sdm660_64:/ $ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/system/lib64
sdm660_64:/ $ echo $LD_LIBRARY_PATH
:/system/lib64
  • Up0
  • Down0
ss.pandiri
Join Date: 29 May 18
Posts: 33
Posted: Tue, 2021-07-13 08:29

Hi,

Found some information at Hexagon SDK documentation. This can help in checking whether FastRPC is supported on your SDM660 device. Please see this:

  Prerequisites 

         This walk-through assumes you have an Android device that supports both FastRPC and Dynamic Loading.

  • The device should be loaded with DSP image

  • If you are using an existing DSP image confirm and setup FastRPC on Android by following these instructions (for this link see 'Setup' below).

     Setup

Follow these steps to setup the FastRPC driver.

Note: when making FastRPC calls, the Remote file system is also handled by the FastRPC driver, so no additional setup is required.

Check if the adsprpc driver is running

adb shell ls /dev/adsprpc-smd

If file does not exist start the driver as follows:

adb root
adb wait-for-device
adb shell insmod /system/lib/modules/adsprpc.ko

If module is not found and /dev/adsprpc-smd is not present this device doesn't support FastRPC.

Re-check if the adsprpc driver is running

adb shell ls /dev/adsprpc-smd

FastRPC driver is now setup.

Optionally check that adsprpcd process is running. This daemon could be located in /system/bin or /system/vendor/bin or some other vendor defined location. If running adb logcat -s </system/bin/>adsprpcd doesn't show any errors FastRPC is enabled and operational. If not running start the daemon and check logcat -s </system/bin/>adsprpcd for errors. On some releases if this daemon is not running, calls into DSP will block until the daemon starts.  

  • Up0
  • Down0
sarajennifer9812
Join Date: 21 Jul 21
Posts: 1
Posted: Wed, 2021-07-21 05:47

working for Android app getting notification error. 

  • Up0
  • Down0
or Register

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.