Android GDR OpenSSL

Android NDK OpenSSL

我是 NDK 的新手,我正在尝试使用 C 将 openssl 添加到我的 android 项目中,我已经看过并尝试过但我不知道如何链接 Android 中的 openssl 库,我问这个的另一个原因是因为大多数页面和 post 我发现谈论或说关于它的信息对 64 位架构(ARM64、MIPS64 和 x86_64)没有任何说明,仅适用于ARM 和 X86 架构,我还没有发现任何最近 post 使用 NDK 10 和 64 位架构。

我试过这个link,当我尝试这条线时出现错误:

$ . ./setenv-android.sh

bash: ./setenv-android.sh: line 106: do

106 行说:

for host in "linux-x86_64" "linux-x86" "darwin-x86_64" "darwin-x86"
  do
    if [ -d "$ANDROID_NDK_ROOT/toolchains/$_ANDROID_EABI/prebuilt/$host/bin" ]; then
    ANDROID_TOOLCHAIN="$ANDROID_NDK_ROOT/toolchains/$_ANDROID_EABI/prebuilt/$host/bin"
    break
  fi
done

但我不知道如何修复代码,而且 post 有点老了。

我也试过这个 link 但我无法完成第 1 步。gpg --import # paste PGP public key block on stdin 当我尝试使用相应的 public 键块时它没有做任何事情,当尝试 ./import_openssl.sh import openssl-*.tar.gz 时它显示错误并且 ./import_openssl.sh regenerate patches/*.patch 没有修复它也不知道如何修改 openssl.configpatches 而且我认为这不适用于 64 位 arch。

谁能告诉我或发给我如何在 NDK 中为所有 ABI 链接 openssl 库,我正在使用 Windows 7、Cygwin 和 NDK 10d

我部分解决了我的问题,但还没有完全解决,我确实为 android x86 和 arm 架构编译了 openssl 我 post 我的进步。

在为所有架构编译 openssl 之前,我不会将此答案标记为正确的

编辑:

我post这个答案