Android NDK 报dlopen failed: library “libc++_shared.so“ not found错误的解决办法

这是由于NDK在编译的时候没有把libc++_shared.so这个库一起编译进去,才会报这样的错误,解决办法是:在Android 的工程目录下找到build.gradle,然后再找到externalNativeBuild中的arguments,添加-DANDROID_STL=c++_shared这个属性进去即可,如果没有arguments属性,请自已添加进去,代码如下:

defaultConfig {
        applicationId "com.example.demo"
        minSdk 21
        targetSdk 32
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        externalNativeBuild {
            cmake {
                arguments "-DANDROID_ARM_NEON=TRUE", "-DANDROID_PLATFORM=android-21", "-DANDROID_STL=c++_shared"
                cppFlags ""
            }
        }
    }

你可能感兴趣的:(Android,android,android,studio,gradle)