Flipper: SoLoader: couldn't find DSO to load: libflipperfb.so

Created on 12 Aug 2019  路  17Comments  路  Source: facebook/flipper

馃悰 Bug Report

Updated Flipper (0.23.1 -> 0.23.4)
Updated SOLoader (0.6.0 -> 0.6.1

To Reproduce

As soon as the app starts, it crashes:

E/SoLoader: couldn't find DSO to load: libflipperfb.so
E/AndroidRuntime: FATAL EXCEPTION: FlipperConnectionThread
    Process: com.myapp.debug, PID: 19891
    java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libflipperfb.so
        at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:774)
        at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:627)
        at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:565)
        at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:513)
        at com.facebook.jni.HybridData.<clinit>(HybridData.java:25)
        at com.facebook.flipper.android.FlipperThread.run(FlipperThread.java:24)
E/AndroidRuntime: FATAL EXCEPTION: FlipperEventBaseThread
    Process: com.myapp.debug, PID: 19891
    java.lang.NoClassDefFoundError: <clinit> failed for class com.facebook.flipper.android.EventBase; see exception in other thread
        at com.facebook.flipper.android.FlipperThread.run(FlipperThread.java:24)

Expected Behavior

The app doesn't crash

Environment

Tested on a physical device (Pixel 2 running P)

Most helpful comment

cd android && ./gradlew clean

This is worked for me

All 17 comments

Downgrading SOLoader to 0.6.0 and keeping Flipper at 0.23.4 works

I'm having the issue in an Oreo emulator.
The suggested workaround works for me too.

Still not work.
In my project, I set abiFilters as follows:

defaultConfig {
    ndk {
        abiFilters 'armeabi'
    }
}

But in Flipper android project:

defaultConfig {
    ndk {
        abiFilters 'x86', 'x86_64', 'armeabi-v7a', 'arm64-v8a'
    }
}

Is this why I can't find libflipperfb.so in the lib/armeabi directory of my apk?

I have tried to add 'armeabi-v7a to my abiFilters, this error is solved. But It raise other error for other so file.

@passy , would you let flipper support armeabi?

@passy , would you let flipper support armeabi?

armeabi is already deprecated since NDK r17. See https://developer.android.com/ndk/guides/abis

@qichuan , thanks, may be I can only copy the so files from armeabi-v7a to my armeabi directory.

As noted by @qichuan we can't support this as newer versions of the NDK don't include that ABI anymore.

Issue of some cache file

rm -rf $HOME/.gradle/caches/

cd android && ./gradlew clean

This is worked for me

Thanks @xi1494-jaswantdhayal Problem solved

@xi1494-jaswantdhayal's solution works. Just that Im wondering why flipper giving issue? It was working fine before in my device. All I did was

  1. Uninstalled the working version (latest version)
  2. Installed another version (same app, just different version)
  3. After days later... i reinstall back my working version (latest version)
  4. Hitting this issue

@HarshaKoshila @xi1494-jaswantdhayal
Thank you it works!

I tried the following different options:-

  1. rm -rf $HOME/.gradle/caches/
  2. cd android && ./gradlew clean
  3. FLIPPER_VERSION=0.33.1
  4. FLIPPER_VERSION=0.49.0@aar
  5. FLIPPER_VERSION=0.78.0

Always the same issue.

Here are setup:

     `System:
         OS: macOS 10.15.5
         CPU: (4) x64 Intel(R) Core(TM) i5-5287U CPU @ 2.90GHz
         Memory: 1.33 GB / 8.00 GB
         Shell: 3.2.57 - /bin/bash
      Binaries:
         Node: 13.8.0 - /usr/local/bin/node
         npm: 6.13.7 - /usr/local/bin/npm
         Watchman: 4.9.0 - /usr/local/bin/watchman
      SDKs:        
         iOS SDK:
         Platforms: iOS 14.4, DriverKit 20.2, macOS 11.1, tvOS 14.3, watchOS 7.2
      IDEs:
        Xcode: 12.4/12D4e - /usr/bin/xcodebuild
      npmPackages:
         react: 16.9.0 => 16.9.0 
         react-native: 0.61.5 => 0.61.5 
      npmGlobalPackages:
        react-native-cli: 2.0.1
        react-native: 0.61.5`

Below is my error log.

      `2021-03-02 19:15:51.950 8696-8746/com.xxxx D/SoLoader: libflipper.so not found on /data/user/0/com.xxxx/lib-main
        2021-03-02 19:15:51.950 8696-8746/com.xxxx D/SoLoader: libflipper.so found on /data/app/~~JKMOYC8Kgh_0cyeIIIPfJw==/com.xxxx-A59UUF7pLW4jtdMOS9BPnQ==/lib/x86 
        2021-03-02 19:15:51.950 8696-8746/com.xxxx D/SoLoader: Not resolving dependencies for libflipper.so
        2021-03-02 19:15:51.953 8696-8746/com.xxxx W/System.err: java.lang.UnsatisfiedLinkError: dlopen failed: library "libfbjni.so" not found: needed by /data/app/~~JKMOYC8Kgh_0cyeIIIPfJw==/com.xxxx-A59UUF7pLW4jtdMOS9BPnQ==/lib/x86/libflipper.so in namespace classloader-namespace
        2021-03-02 19:15:51.953 8696-8746/com.xxxx W/System.err:     at java.lang.Runtime.load0(Runtime.java:939)
        2021-03-02 19:15:51.953 8696-8746/com.xxxx W/System.err:     at java.lang.System.load(System.java:1628)
        2021-03-02 19:15:51.953 8696-8746/com.xxxx W/System.err:     at com.facebook.soloader.SoLoader$1.load(SoLoader.java:395)
        2021-03-02 19:15:51.954 8696-8746/com.xxxx W/System.err:     at com.facebook.soloader.DirectorySoSource.loadLibraryFrom(DirectorySoSource.java:77)
        2021-03-02 19:15:51.954 8696-8746/com.xxxx W/System.err:     at com.facebook.soloader.DirectorySoSource.loadLibrary(DirectorySoSource.java:50)
        2021-03-02 19:15:51.954 8696-8746/com.xxxx W/System.err:     at com.facebook.soloader.ApplicationSoSource.loadLibrary(ApplicationSoSource.java:82)
        2021-03-02 19:15:51.954 8696-8746/com.xxxx W/System.err:     at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:766)
        2021-03-02 19:15:51.954 8696-8746/com.xxxx W/System.err:     at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:673)
        2021-03-02 19:15:51.954 8696-8746/com.xxxx W/System.err:     at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:611)
        2021-03-02 19:15:51.954 8696-8746/com.xxxx W/System.err:     at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:559)
        2021-03-02 19:15:51.954 8696-8746/com.xxxx W/System.err:     at com.facebook.flipper.android.EventBase.<clinit>(EventBase.java:19)
        2021-03-02 19:15:51.954 8696-8746/com.xxxx W/System.err:     at com.facebook.flipper.android.FlipperThread.run(FlipperThread.java:25)
        2021-03-02 19:15:51.955 8696-8746/com.xxxx E/SoLoader: couldn't find DSO to load: libflipper.so caused by: dlopen failed: library "libfbjni.so" not found: needed by /data/app/~~JKMOYC8Kgh_0cyeIIIPfJw==/com.xxxx-A59UUF7pLW4jtdMOS9BPnQ==/lib/x86/libflipper.so in namespace classloader-namespace result: 0
        2021-03-02 19:15:51.956 8696-8747/com.xxxx E/AndroidRuntime: FATAL EXCEPTION: 
      FlipperConnectionThread
         Process: com.xxxx, PID: 8696
         java.lang.NoClassDefFoundError: <clinit> failed for class com.facebook.flipper.android.EventBase; see exception in other thread
          at com.facebook.flipper.android.FlipperThread.run(FlipperThread.java:25)
        2021-03-02 19:15:51.959 8696-8746/com.xxxx I/Process: Sending signal. PID: 8696 SIG: 9`

Someone please assist.

cd android && ./gradlew clean

This is worked for me
Thanks

cd android && ./gradlew clean

This is worked for me

Very thanks!

cd android && ./gradlew clean

This is worked for me

Thank you so much

Was this page helpful?
0 / 5 - 0 ratings