Execution failed for task ':app:mergeDebugNativeLibs'. in react native

Viewed 20719

I installed react-native-pdf and now when I run "npx react-native run-android", it fails with the following:

* What went wrong:
Execution failed for task ':app:mergeDebugNativeLibs'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > More than one file was found with OS independent path 'lib/x86/libc++_shared.so'

Can anyone help me use the package react-native-pdf?

ive

5 Answers

I had the same issue and i resolved it by adding the following to android/app/build.gradle

android {

packagingOptions {
    pickFirst 'lib/x86/libc++_shared.so'
    pickFirst 'lib/x86_64/libc++_shared.so'
    pickFirst 'lib/armeabi-v7a/libc++_shared.so'
    pickFirst 'lib/arm64-v8a/libc++_shared.so'
}

/** rest of your code here **/

}

Open the project in Android Studio android and clean the project Build -> Clean Project

Add this code to "/android/app/build.gradle"

android {
  packagingOptions {
      pickFirst 'lib/x86/libc++_shared.so'
      pickFirst 'lib/x86_64/libc++_shared.so'
      pickFirst 'lib/armeabi-v7a/libc++_shared.so'
      pickFirst 'lib/arm64-v8a/libc++_shared.so'
  }
  /** .... **/
}

So run this on the terminal

$ cd android/
$ ./gradlew cleanBuildCache
$ cd ..
$ sudo npx react-native run-android

For us, it was caused by react-native-pdf.

So either, eject the project and update build.gradle same as other answers say or, get rid of it if not used or you may replace it with rn-pdf-reader-js

i changed minSdkVersion to 21 in "android/app/build.gradle".

defaultConfig {
        // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
        applicationId "com.example.custom_epub_view"
        minSdkVersion 21
        targetSdkVersion 29
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
    }
Related