2023-01-21 308
我面临一个奇怪的问题.
我正在为我的Android应用程序构建共享库.
我不能同时构建ARMV5和ARMV7.
如果这样做,我会在第二次运行时(NDK构建ARMV7 LIB)在源文件上遇到很多错误:
FinderPatternInfo.o: previous definition here
multiple definition of ...
我的 application.mk
APP_ABI := armeabi armeabi-v7a
APP_PLATFORM := android-8
APP_STL := stlport_static
APP_CPPFLAGS += -fexceptions
如果我仅设置app_abi:= armeabi或app_abi:= armeabi-v7a ..
有什么想法吗?
谢谢您的帮助,
编辑:android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := MyModule
MY_LOCAL_INCLUDED_FILES += $(wildcard $(LOCAL_PATH)/*.h)
MY_LOCAL_INCLUDED_FILES += $(wildcard $(LOCAL_PATH)/*.hpp)
MY_LOCAL_INCLUDED_FILES += $(wildcard $(LOCAL_PATH)/bigint/*.h)
... (many includes)
LOCAL_C_INCLUDES := $(subst jni/, , $(MY_LOCAL_INCLUDED_FILES))
MY_LOCAL_SRC_FILES += $(wildcard $(LOCAL_PATH)/*.c)
MY_LOCAL_SRC_FILES += $(wildcard $(LOCAL_PATH)/*.cpp)
MY_LOCAL_SRC_FILES += $(wildcard $(LOCAL_PATH)/bigint/*.c)
.... (many cpp files)
LOCAL_SRC_FILES := $(subst jni/, , $(MY_LOCAL_SRC_FILES))
LOCAL_CFLAGS := -DNO_ICONV
include $(BUILD_SHARED_LIBRARY)
Android Make Make System对您的Android.mk进行分析一次,因此您的 my_local_src_files 在有两个目标时,将获得所有.c和.cpp文件的完整集,但只有一个目标时只有一个.
如果您的第一个 my_local_src_files 使用的分配:=而不是 +=,我认为这将解决问题.
以上所述是小编给大家介绍的NDK Android-不能同时构建ARMv5和V7,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!
原文链接:https://77isp.com/post/26243.html
=========================================
https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。
数据库技术 2022-03-28
网站技术 2022-11-26
网站技术 2023-01-07
网站技术 2022-11-17
Windows相关 2022-02-23
网站技术 2023-01-14
Windows相关 2022-02-16
Windows相关 2022-02-16
Linux相关 2022-02-27
数据库技术 2022-02-20
抠敌 2023年10月23日
嚼餐 2023年10月23日
男忌 2023年10月22日
瓮仆 2023年10月22日
簿偌 2023年10月22日
扫码二维码
获取最新动态