2

我有两个项目。第一个的输出是libtest.so文件。在第二个项目中使用这个共享对象文件,我想生成最终的 android 可执行文件AndroidExe

我生成了libtest.so,它的Android.mk如下所示

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_CFLAGS := -g
LOCAL_ARM_MODE := arm
LOCAL_MODULE :=test
LOCAL_SRC_FILES := test.c 
export LD_LIBRARY_PATH=/data/local/tmp

include $(BUILD_SHARED_LIBRARY)

这里我面临的问题是,我不知道如何在我的最终可执行项目中链接这个.so文件。在这个最终项目中,我使用.so lib中定义的函数之一(sum(a,b))。在构建时,显示错误未定义对'sum'的引用。它的Android.mk文件如下所示:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_CFLAGS := -g
LOCAL_ARM_MODE := arm
LOCAL_MODULE :=AndroidExe
LOCAL_SHARED_LIBRARIES := libtest.so
LOCAL_SRC_FILES := AndroidExe.c 

include $(BUILD_EXECUTABLE)
4

1 回答 1

2

只需检查ndk 文档并尝试一些示例

于 2014-01-10T06:45:10.510 回答