gpt4 book ai didi

android - 为 Android ARMV7 编译 OpenSSL 1.1.0

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:18:57 27 4
gpt4 key购买 nike

我正在尝试在 Ubuntu 机器上为 Android ARMV7 编译 OpenSSL 1.1.0(k)。但我只能针对目标 android、android-armabi、android64(-aarch64) 进行编译。

我在尝试什么(在 openssl-1.1.0k 文件夹中):

export AR=~/android-ndk-r11c/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc-ar
export CC=~/android-ndk-r11c/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc
export LD=~/android-ndk-r11c/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ld
export RANLIB=~/android-ndk-r11c/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc-ranlib
export ANDROIDNDKVER=r11c
export ANDROIDAPI=24
export CROSS_SYSROOT=~/android-ndk-r11c/platforms/android-24/arch-arm64
export ANDROID_DEV=~/android-ndk-r11c/platforms/android-24/arch-arm64/usr/
export SYSROOT=~/android-ndk-r11c/platforms/android-24/arch-arm64/usr/
export PATH=$PATH:~/android-ndk-r11c/platforms/android-24/arch-arm64/usr/

现在当我列出目标时

./Configure LIST

没有提到Armv7。当我在 openssl-1.0.2l 目录中输入相同的命令时,我期望一个名为 android-armv7 的目标。

我错过了什么?或者我如何在 armv7 Android 手机的兼容版本中编译 Openssl-1.1.0?

使用 NDK r18b 或 android-28 也没有成功,甚至使用 arch-arm 而不是 arch-arm64 也没有用。

背景:我现在使用的框架 (Qt 5.13) 需要 OpenSSL 1.1.0,它适用于某些手机。与 HTC 10(armv8 64 位)类似,但在 LG K7(armv7 32 位)和 Amazon Fire 平板电脑上它无法正常工作。

谢谢,

最佳答案

我没有尝试使用 OpenSSL 1.1.0,但我对 Qt 5.12.41.1.1c 做了同样的事情。我用了 guide我发现可以为 32 位和 64 位的 android 编译它。

此外,32bit 基本上是 android-armeabi,因此请将其用于架构类型。您还可以找到更多信息和已编译的库 here .

我测试了使用链接指南编译的 32 位和 64 位库,我可以说它们可以正常工作。

同时确保使用较新的 NDK,基于您使用的 r11c 的代码有点太旧了。对于 Qt 5.13.0,您至少需要 19c,因此使用相同的版本进行编译。

关于android - 为 Android ARMV7 编译 OpenSSL 1.1.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57216046/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com