我正在尝试编译一个使用jni的Android应用程序。我正在编译应用程序的本机部分,并且链接器因许多错误而失败,如下所示:
arm-linux-androideabi-4.8/prebuilt/darwin-x86_64/bin/../lib/gcc/arm-linux- androideabi/4.8/arm-linux-androideabi/bin/ld.gold:
error: /libsomething.a(flashloaderinfo.o): multiple definition of 'ResourceRequest::DispatchStatusEvent(HttpStatusResponse const*)'
libsomething.a(resourcerequest.o): previous definition here.
我想将我的应用与此标记相关联:
-Wl,--allow-multiple-definition
看看会发生什么。我该如何指定那面旗帜?它会进入我的Application.mk文件吗?还是在Android.mk中?
我试过
APP_CFLAGS = -Wl,--allow-multiple-definition
但是这会在构建阶段设置标志,而不是在链接阶段。
答案 0 :(得分:2)
您应该在 Android.mk 或命令行中设置LOCAL_LDFLAGS
。