我正在尝试将HW视频加速添加到我的设备的cm10.2端口。我没有错误,但下面的错误 make
停止工作,显然没有任何错误。
/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....
这是什么意思?我应该使用限制较少的标志进行编译还是更糟糕的原因?
更新:
从Android NDK r11你可以使用
LOCAL_LDLIBS += -Wl,--no-warn-shared-textrel
你也可以使用
LOCAL_DISABLE_FATAL_LINKER_WARNINGS := true
上一个答案:
这是最近工具链的一个变化,它将此警告视为错误。
一种解决方法是添加 --no-warn-shared-textrel
至 LOCAL_LDFLAGS
禁用将警告视为错误。你可以在你的 Android.mk
喜欢
LOCAL_LDFLAGS := --no-warn-shared-textrel
更新:
从Android NDK r11你可以使用
LOCAL_LDLIBS += -Wl,--no-warn-shared-textrel
你也可以使用
LOCAL_DISABLE_FATAL_LINKER_WARNINGS := true
上一个答案:
这是最近工具链的一个变化,它将此警告视为错误。
一种解决方法是添加 --no-warn-shared-textrel
至 LOCAL_LDFLAGS
禁用将警告视为错误。你可以在你的 Android.mk
喜欢
LOCAL_LDFLAGS := --no-warn-shared-textrel
Android NDK r11的解决方法:
LOCAL_LDLIBS += -Wl,--no-warn-shared-textrel
LOCAL_LDLIBS
稍后在选项链中应用 LOCAL_LDFLAGS
,并因此覆盖默认值。
对于asop项目(例如:aosp / external / myproject /)
将此行添加到您的android.mk
LOCAL_CPPFLAGS += -w -frtti