共享库文本段不可共享

我正在尝试将HWvideo加速添加到我的设备的cm10.2端口。 我没有得到任何的错误,但下面的错误,然后停止工作,显然没有任何错误。

 /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.... 

这是什么意思? 我应该使用限制性较低的标志进行编译还是更糟?

Solutions Collecting From Web of "共享库文本段不可共享"

更新:

从Android NDK r11你可以使用

 LOCAL_LDLIBS += -Wl,--no-warn-shared-textrel 

你也可以使用

 LOCAL_DISABLE_FATAL_LINKER_WARNINGS := true 

先前的回答:

这是工具链中最近发生的一个变化,它将这个警告视为错误。

一个解决方法是将--no-warn-shared-textrelLOCAL_LDFLAGS以禁止将警告视为错误。 你可以在你的Android.mk这样做

 LOCAL_LDFLAGS := --no-warn-shared-textrel 

Android NDK r11的解决方法:

 LOCAL_LDLIBS += -Wl,--no-warn-shared-textrel 

LOCAL_LDLIBS稍后在选项链中LOCAL_LDFLAGS ,而不是LOCAL_LDFLAGS ,因此将覆盖默认值。

对于asop项目(例如:aosp / external / myproject /)

将此行添加到您的android.mk

LOCAL_CPPFLAGS += -w -frtti