android for x86 64,Android NDK for x86_64没有bcopy和index的参考

我正在尝试使用Android NDK为x86_64架构编译Lame声音库.我得到以下链接错误未定义引用bcopy和索引:

jni/libmp3lame/encoder.c:471: error: undefined reference to 'bcopy'

jni/libmp3lame/encoder.c:476: error: undefined reference to 'bcopy'

jni/libmp3lame/id3tag.c:1125: error: undefined reference to 'index'

jni/libmp3lame/newmdct.c:1036: error: undefined reference to 'bcopy'

jni/libmp3lame/util.c:685: error: undefined reference to 'bcopy'

代码成功编译了x86和arm架构.

所以我稍微挖掘了NDK的libs并注意到bcopy和index都是在libc.so中导出的x86和arm平台,但不是x86_64(参见下面的objdump输出).

$> objdump -d android-ndk-r10d/platforms/android-21/arch-arm/usr/lib/libc.so | grep bcopy -A 6

0000b000 :

b000: e52db004 push {fp} ; (str fp, [sp, #-4]!)

b004: e28db000 add fp, sp, #0

b008: e28bd000 add sp, fp, #0

b00c: e8bd0800 ldmfd sp!, {fp}

b010: e12fff1e bx lr

$> objdump -d android-ndk-r10d/platforms/android-21/arch-x86/usr/lib/libc.so | grep -A 6 bcopy

00009fb0 :

9fb0: 55 push %ebp

9fb1: 89 e5 mov %esp,%ebp

9fb3: 5d pop %ebp

9fb4: c3 ret

$> objdump -d android-ndk-r10d/platforms/android-21/arch-x86_64/usr/lib/libc.so | grep -A 6 bcopy

<>

有什么想法吗?下面是我的Android.mk和Application.mk文件.

Application.mk:

APP_ABI:=x86_64

APP_PLATFORM := android-21

Android.mk:

LOCAL_PATH := $(call my-dir)

APP_PLATFORM := android-21

include $(CLEAR_VARS)

LOCAL_MODULE := libmp3lame

LOCAL_SRC_FILES := \

......

LOCAL_LDLIBS += -llog

include $(BUILD_SHARED_LIBRARY)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值