【发布时间】:2019-07-06 11:45:52
【问题描述】:
我之前问过基本相同的问题(不同的 NDK)here,并认为我正确构建了 openssl,但一旦我尝试将其链接到我的应用程序,我发现我没有正确构建它。
如果我从@AlexCohn here 得到答案,我会从
setenv_android.sh脚本开始。我修改脚本以设置
THE_ARCH=arm64-v8a尝试针对 64 位 android 架构。-
当我运行脚本时,有些东西找不到:
ERROR: Failed to find Android cpp. Please edit this script. ERROR: Failed to find Android gcc. Please edit this script. ERROR: Failed to find Android g++. Please edit this script. ERROR: AOSP_STL_INC is not valid. Please edit this script. ERROR: AOSP_STL_LIB is not valid. Please edit this script. ANDROID_NDK_ROOT: /Users/spartygw/android-ndk-r19/ AOSP_TOOLCHAIN_PATH: /Users/spartygw/android-ndk-r19//toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64/bin AOSP_ABI: arm64-v8a AOSP_API: android-21 AOSP_SYSROOT: /Users/spartygw/android-ndk-r19//platforms/android-21/arch-arm64 AOSP_FLAGS: -funwind-tables -fexceptions -frtti AOSP_STL_INC: /Users/spartygw/android-ndk-r19//sources/cxx-stl/stlport/stlport/ AOSP_STL_LIB: /Users/spartygw/android-ndk-r19//sources/cxx-stl/stlport/libs/arm64-v8a/libstlport_shared.so -
当我查看
/Users/spartygw/android-ndk-r19//toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64/bin时,没有aarch64-linux-android-cpp或-gcc或-g++,正如脚本输出所说:$ ls -1 ~/android-ndk-r19//toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64/bin ./ ../ aarch64-linux-android-addr2line aarch64-linux-android-ar aarch64-linux-android-as aarch64-linux-android-c++filt aarch64-linux-android-dwp aarch64-linux-android-elfedit aarch64-linux-android-gprof aarch64-linux-android-ld aarch64-linux-android-ld.bfd aarch64-linux-android-ld.gold aarch64-linux-android-nm aarch64-linux-android-objcopy aarch64-linux-android-objdump aarch64-linux-android-ranlib aarch64-linux-android-readelf aarch64-linux-android-size aarch64-linux-android-strings aarch64-linux-android-strip
这就是我认为我上次惹上麻烦的地方。我开始修改脚本以获得似乎可以工作的东西,我确定我现在做的事情是错误的。
我真的不明白这个过程,所以我希望得到帮助。有人成功构建了 OpenSLL 的 arm64-v8a 版本吗?
【问题讨论】:
标签: android android-ndk openssl