当我尝试使用继承libssl.so和libcrypto.so的本机代码构建我的Android应用程序时,我得到“未定义的SSL_new引用”链接错误。 我在android.mk和application.mk中做错了什么?
两个mk文件都位于\ home \ project_root \ app \ src \ main \ _jni。 这是android.mk:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := myWebCrawler
LOCAL_SHARED_LIBRARIES := ../libs/$(TARGET_ARCH_ABI)/libssl.so ../libs/$(TARGET_ARCH_ABI)/libcrypto.so
LOCAL_SRC_FILES := utils/error_codes.c utils/list.c yetAdditionalSources.c
LOCAL_LDLIBS := -llog
include $(BUILD_SHARED_LIBRARY)
我的application.mk包含一行:
APP_ABI := armeabi armeabi-v7a
在我的项目文件夹中,我有以下子文件夹: \家\ project_root \程序\ SRC \主\库\ armeabi, \家\ project_root \程序\ SRC \主\库\ armeabi-V7A, \家\ project_root \程序\ SRC \主\库\ arm64-V8A, \家\ project_root \应用\ SRC \主\库\ MIPS64
每个人都有libssl.so和libcrypto.so的副本。
路径$(NDK_ROOT\platforms\android-21\$(TARGET_ARCH_ABI)\usr\lib)
也有副本
对于所有的广场。 (x86,mips,arm ......)
我做错了什么?为什么ndk build没有找到.so文件?
另外,当我从终端调用ndk-build时,我得到有关arm架构的错误 目标'/home/WebCrawler/app/src/main/obj/local/armeabi/libWebCrawler.so'的配方失败
当点击android studio中的构建按钮时,它指的是mips
make: *** [/home/WebCrawler/app/build/intermediates/ndkBuild/debug/obj/local/mips64/libWebCrawler.so] Error 1
即使Application.mk没有在指令APP_ABI := armeabi armeabi-v7a
如果您需要更多信息以帮助我解决mk问题,请提出要求。