本文介绍了NDK:如何在不考虑架构的情况下包含预构建的共享库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在移植 Box2D 以了解更多关于 android 移植的知识.
I am working on porting Box2D to learn a little more about android porting.
我可以编译项目,我看到以下内容......
I can get the project compiling and I see the following....
ls 库/
armeabi armeabi-v7a
armeabi armeabi-v7a
现在我想做类似 这个 但我不知道如何让它足够聪明来选择拱门(比如我想添加 x86).如何在不将 .so 路径硬编码到规范架构的情况下包含 .so?
Now I want to do something like this but i don't know how to make it smart enough to choose arch (say I wanted to add x86). How do I include the .so without hard coding the .so path to a spec arch?
推荐答案
成功了...
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := box2D-prebuilt
LOCAL_SRC_FILES := ../Box2D/libs/$(TARGET_ARCH_ABI)/libbox2D.so
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/..
include $(PREBUILT_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := box2DHello
LOCAL_SRC_FILES :=
$(subst $(LOCAL_PATH)/,,
$(wildcard $(LOCAL_PATH)/*.cpp))
LOCAL_LDLIBS := -lm -llog
LOCAL_SHARED_LIBRARIES := box2D-prebuilt
include $(BUILD_SHARED_LIBRARY)
这篇关于NDK:如何在不考虑架构的情况下包含预构建的共享库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!