我试图在我的

Android项目中使用开源C库.该库使用atof()函数.我知道atof()是标准C库(stdlib.h)中定义的函数.因此,它应该在Android NDK(仿生库)上的标准C库中实现.

但是,当我尝试加载包含对此函数的调用的库时,我收到运行时错误:

java.lang.UnsatisfiedLinkError: Cannot load library: reloc_library[1285]: 86 cannot locate 'atof'....

我是使用NDK进行Android开发的初学者,所以也许我只是错过了标志,编译器指令等等.

我的android.mk文件是:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_ALLOW_UNDEFINED_SYMBOLS := true

LS_CPP=$(subst $(1)/,$(wildcard $(1)/$(2)/*.c))

LOCAL_MODULE := libA

LOCAL_SHARED_LIBRARIES := \

libgmodule-2.0 \

libgobject-2.0 \

libgthread-2.0 \

libglib-2.0

LOCAL_SRC_FILES:= sourceFile.c

include $(BUILD_SHARED_LIBRARY

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐