I am trying to add HW video acceleration to a cm10.2 port for my device. I get no errors but the one below, then make
stops working, apparently without any error.
/home/vektor/CM102/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin/../lib/gcc/arm-linux-androideabi/4.7/../../../../arm-linux-androideabi/bin/ld: warning: shared library text segment is not shareable
/home/vektor/CM102/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin/../lib/gcc/arm-linux-androideabi/4.7/../../../../arm-linux-androideabi/bin/ld: error: treating warnings as errors
collect2: error: ld returned 1 exit status
make: *** [/home/vektor/CM102/out/target/product/s7300b/obj/SHARED_LIBRARIES/libamplayer_intermediates/LINKED/libamplayer.so] Error 1
make: *** Waiting for unfinished jobs....
What does it mean? Should I compile with less restrictive flags or is something worse causing it?
Update:
from Android NDK r11 you can use
LOCAL_LDLIBS += -Wl,--no-warn-shared-textrel
You can also use
LOCAL_DISABLE_FATAL_LINKER_WARNINGS := true
Previous answer:
This is a recent change in toolchain which treats this warning as an error.
One workaround is to add --no-warn-shared-textrel
to LOCAL_LDFLAGS
to disable treating warning as an error. You can do that in your Android.mk
like
LOCAL_LDFLAGS := --no-warn-shared-textrel
Workaround for Android NDK r11:
LOCAL_LDLIBS += -Wl,--no-warn-shared-textrel
LOCAL_LDLIBS
is applied later in the option chain than LOCAL_LDFLAGS
, and consequently overrides the default.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With