Help with being built with text relocations

It’s entirely possible I’m doing something dumb here, so I apologize if so. I’ll try to be concise.

I’ve got an Android app I’m building that uses GStreamer. I’ve upgraded the GStremer libs I’m using from 1.22.x (NDK r21) to 1.24.x (NDK r25c). Other than pointing Android Studio to a different NDK, I did nothing else. It’s crashing now.

It looks as though upgrading from NDK r21 to r25 involves a restriction that text allocations are not allowed in shared object files. Android is claiming my APK has a shared library with text relocations after upgrading to the latest GStreamer as part of the crash.

I looked at the file being loaded on an example android device with scanelf and it wrote out:

scanelf: scanelf_file_textrels(): ELF has TEXTREL markings but doesnt appear to have any real TEXTREL's !?

Do I need to do anything special, or should the make files under the GStreamer ndk-build directories build without text relocations?

The build.gradle in my app looks like this when referring to GStreamer:

        externalNativeBuild {
            ndkBuild {
                def gstRoot

                if (project.hasProperty('gstAndroidRoot'))
                    gstRoot = project.gstAndroidRoot
                    gstRoot = System.env.GSTREAMER_ROOT_ANDROID

                if (gstRoot == null)
                    throw new GradleException('GSTREAMER_ROOT_ANDROID must be set, or "gstAndroidRoot" must be defined in your in the top level directory of the unpacked universal GStreamer Android binaries')

                arguments "NDK_APPLICATION_MK=src/main/jni/", "GSTREAMER_JAVA_SRC_DIR=src", "GSTREAMER_ROOT_ANDROID=$gstRoot", "GSTREAMER_ASSETS_DIR=src/assets"

                targets "native"

                abiFilters  'armeabi-v7a', 'arm64-v8a'

I also went into GStreamer’s ndk-build make files and tried adding -fPIC to the cflags. That didn’t solve anything.

Thanks in advance.