question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

couldn't find DSO to load: libmapbox-gl.so

See original GitHub issue
E/SoLoader: couldn't find DSO to load: libmapbox-gl.so caused by: dlopen failed: "/data/data/im.aa.messager/lib-main/libmapbox-gl.so" has unexpected e_machine: 40 (EM_ARM)
E/Mbgl-LibraryLoader: Failed to load native shared library.
    com.facebook.soloader.SoLoader$WrongAbiError: APK was built for a different platform
        at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:645)
        at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:577)
        at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:525)
        at com.mapbox.mapboxsdk.module.loader.LibraryLoaderProviderImpl$SoLibraryLoader.load(LibraryLoaderProviderImpl.java:42)
        at com.mapbox.mapboxsdk.LibraryLoader.load(LibraryLoader.java:43)
        at com.mapbox.mapboxsdk.net.NativeConnectivityListener.<clinit>(NativeConnectivityListener.java:13)
        at com.mapbox.mapboxsdk.net.ConnectivityReceiver.instance(ConnectivityReceiver.java:43)
        at com.mapbox.mapboxsdk.Mapbox.getInstance(Mapbox.java:67)
        at im.yai.message.mvp.ui.fragment.MapBoxFragment.onCreate(MapBoxFragment.java:79)
        at android.support.v4.app.Fragment.performCreate(Fragment.java:2414)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1418)
        at android.support.v4.app.FragmentTransition.addToFirstInLastOut(FragmentTransition.java:1195)
        at android.support.v4.app.FragmentTransition.calculateFragments(FragmentTransition.java:1078)
        at android.support.v4.app.FragmentTransition.startTransitions(FragmentTransition.java:117)
        at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2408)
        at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2366)
        at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2273)
        at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:733)
        at android.os.Handler.handleCallback(Handler.java:873)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6669)
        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)
     Caused by: java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libmapbox-gl.so caused by: dlopen failed: "/data/data/im.aa.messager/lib-main/libmapbox-gl.so" has unexpected e_machine: 40 (EM_ARM)
        at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:789)
        at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:639)
        at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:577) 
        at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:525) 
        at com.mapbox.mapboxsdk.module.loader.LibraryLoaderProviderImpl$SoLibraryLoader.load(LibraryLoaderProviderImpl.java:42) 
        at com.mapbox.mapboxsdk.LibraryLoader.load(LibraryLoader.java:43) 
        at com.mapbox.mapboxsdk.net.NativeConnectivityListener.<clinit>(NativeConnectivityListener.java:13) 
        at com.mapbox.mapboxsdk.net.ConnectivityReceiver.instance(ConnectivityReceiver.java:43) 
        at com.mapbox.mapboxsdk.Mapbox.getInstance(Mapbox.java:67) 
        at im.yai.message.mvp.ui.fragment.MapBoxFragment.onCreate(MapBoxFragment.java:79) 
        at android.support.v4.app.Fragment.performCreate(Fragment.java:2414) 
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1418) 
        at android.support.v4.app.FragmentTransition.addToFirstInLastOut(FragmentTransition.java:1195) 
        at android.support.v4.app.FragmentTransition.calculateFragments(FragmentTransition.java:1078) 
        at android.support.v4.app.FragmentTransition.startTransitions(FragmentTransition.java:117) 
        at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2408) 
        at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2366) 
        at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2273) 
        at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:733) 
        at android.os.Handler.handleCallback(Handler.java:873) 
        at android.os.Handler.dispatchMessage(Handler.java:99) 
        at android.os.Looper.loop(Looper.java:193) 
        at android.app.ActivityThread.main(ActivityThread.java:6669) 
        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) 

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Reactions:3
  • Comments:18 (3 by maintainers)

github_iconTop GitHub Comments

1reaction
Prajun2010commented, May 30, 2021

Resolved those issues by implementing this step in a flutter project. Might work for you too. Add packagingOption in android>app>build.gradle

Screenshot 2021-05-31 011018

packagingOptions { pickFirst ‘/armeabi-v7a/libmapbox-gl.so’ pickFirst '/x86/libmapbox-gl.so’ pickFirst ‘/arm64-v8a/libmapbox-gl.so’ pickFirst '/x86_64/libmapbox-gl.so’ pickFirst ‘**/x86/libmapbox-gl.so’ }

1reaction
AAverincommented, May 5, 2020

@langsmith invalidate cache will not help because it’s a bug in SoLoader that was fixed some time ago. MapBox SDK should update it’s dependencies and release a new version

Read more comments on GitHub >

github_iconTop Results From Across the Web

couldn't find DSO to load: libjscexecutor.so caused by: dlopen ...
This issue only comes when you have Hermes engine enabled. clean gradle and re run the entire app this issue will be gone....
Read more >
E/SoLoader: couldn't find DSO to load: libjscexecutor.so
I'm trying to upgrade my ReactNative application to RN0.59.9. As usual, everything works fine on iOS (manage to build as 64bit) side but...
Read more >
React Native error with couldn't find DSO to load: libhermes.so
Solution. Modify the dependencies block of android/app/build. gradle , add or upgrade the SOLoader dependency, as follows.
Read more >
java.lang.UnsatisfiedLinkError: couldn't find D...anycodings
Answers 1 : of java.lang.UnsatisfiedLinkError: couldnt find DSO to load: libfbjni.so result: 0. For me the following two solved it (I anycodings_react-native ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found