Discussion:
Text relocation in Android gstreamer library: error compilation after API=23
Gregoire Gentil
2015-12-21 19:43:03 UTC
Permalink
I have an Android gstreamer library. It was initially compiled with
version 1.5.1 on API 19 or 21. I had a warning message stating that
there are some text relocations but there was no problem.

I upgraded to API 23, NDK revsion 10e as well as gstreamer 1.6. If I use

<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="22" />

in the manifest, everything works fine.

If I use

<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="23" />

it still compiles but it doesn't work at run-time. The device says that
it can't find the library though it's in the apk file.

Before the upgrade, I tried to add -fPIC but I was still getting the
warning. I was unsure if the relocation was in my code or if it was in
the Android gstreamer binaries.

Since the upgrade to gstreamer 1.6, I don't get any more warning or
error during compilation. But now it fails at run-time.

I'm wondering if the gstreamer binaries had or have some text
relocation. I don't think that I'm doing anything special in my
gstreamer code that would trigger a relocation but I'm unsure.

Here is a couple of link:

http://stackoverflow.com/questions/34373984/missing-library-for-android-6-x-app-when-compiling-with-targetsdkversion-23-32

https://code.google.com/p/android-developer-preview/issues/detail?id=3028

Any idea?

Grégoire
s***@free.fr
2015-12-21 21:57:47 UTC
Permalink
Text relocation is caused by libav and x264 plugins. If you don't need them and remove it you won't have text relocation anymore, and your library will be allowed again when targeting android-23.
See following bug report: https://bugzilla.gnome.org/show_bug.cgi?id=742633
But you could also keep targeting android-22 so you won't be annoyed by this.

----- Mail original -----
De: "Gregoire Gentil" <***@gentil.com>
À: gstreamer-***@lists.freedesktop.org
Envoyé: Lundi 21 Décembre 2015 20:43:03
Objet: Text relocation in Android gstreamer library: error compilation after API=23

I have an Android gstreamer library. It was initially compiled with
version 1.5.1 on API 19 or 21. I had a warning message stating that
there are some text relocations but there was no problem.

I upgraded to API 23, NDK revsion 10e as well as gstreamer 1.6. If I use

<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="22" />

in the manifest, everything works fine.

If I use

<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="23" />

it still compiles but it doesn't work at run-time. The device says that
it can't find the library though it's in the apk file.

Before the upgrade, I tried to add -fPIC but I was still getting the
warning. I was unsure if the relocation was in my code or if it was in
the Android gstreamer binaries.

Since the upgrade to gstreamer 1.6, I don't get any more warning or
error during compilation. But now it fails at run-time.

I'm wondering if the gstreamer binaries had or have some text
relocation. I don't think that I'm doing anything special in my
gstreamer code that would trigger a relocation but I'm unsure.

Here is a couple of link:

http://stackoverflow.com/questions/34373984/missing-library-for-android-6-x-app-when-compiling-with-targetsdkversion-23-32

https://code.google.com/p/android-developer-preview/issues/detail?id=3028

Any idea?

Grégoire
Gregoire Gentil
2015-12-21 22:51:55 UTC
Permalink
I'm fine to keep android-22 but I think that the importance of this bug
should be raised up because Android-23 doesn't consider it any more as a
warning but as an error and it prevents from working,

Grégoire
Post by s***@free.fr
Text relocation is caused by libav and x264 plugins. If you don't need them and remove it you won't have text relocation anymore, and your library will be allowed again when targeting android-23.
See following bug report: https://bugzilla.gnome.org/show_bug.cgi?id=742633
But you could also keep targeting android-22 so you won't be annoyed by this.
----- Mail original -----
Envoyé: Lundi 21 Décembre 2015 20:43:03
Objet: Text relocation in Android gstreamer library: error compilation after API=23
I have an Android gstreamer library. It was initially compiled with
version 1.5.1 on API 19 or 21. I had a warning message stating that
there are some text relocations but there was no problem.
I upgraded to API 23, NDK revsion 10e as well as gstreamer 1.6. If I use
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="22" />
in the manifest, everything works fine.
If I use
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="23" />
it still compiles but it doesn't work at run-time. The device says that
it can't find the library though it's in the apk file.
Before the upgrade, I tried to add -fPIC but I was still getting the
warning. I was unsure if the relocation was in my code or if it was in
the Android gstreamer binaries.
Since the upgrade to gstreamer 1.6, I don't get any more warning or
error during compilation. But now it fails at run-time.
I'm wondering if the gstreamer binaries had or have some text
relocation. I don't think that I'm doing anything special in my
gstreamer code that would trigger a relocation but I'm unsure.
http://stackoverflow.com/questions/34373984/missing-library-for-android-6-x-app-when-compiling-with-targetsdkversion-23-32
https://code.google.com/p/android-developer-preview/issues/detail?id=3028
Any idea?
Grégoire
_______________________________________________
gstreamer-devel mailing list
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Sebastian Dröge
2015-12-23 08:41:39 UTC
Permalink
Post by Gregoire Gentil
I'm fine to keep android-22 but I think that the importance of this
bug should be raised up because Android-23 doesn't consider it any
more as a warning but as an error and it prevents from working,
It should be fixed at some point indeed, but so far nobody showed much
interest in fixing it and it's also not really urgent yet. If you want
to help with that, as a first step getting in touch with the ffmpeg and
x264 projects would be good.


It's going to be another few years until people seriously start
targetting Android API 23. That's maybe 0.1% of the devices out there
that currently support it and you probably don't want to limit your app
to those.
--
Sebastian Dröge, Centricular Ltd · http://www.centricular.com
matrixy
2018-11-19 09:33:09 UTC
Permalink
Anyone managed to fix this?
i'm getting this issue on x86 devices but not on arm devices.




--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/

Loading...