如何解决在 Apple Silicon M1 Mac 上找不到可用的 libssl 版本
当 AesGCM 进行解密时,Azure 函数中的代码在 M1 Mac 上本地中断
这是代码中断的部分
using var cipher = new AesGcm(key);
cipher.Decrypt(nonce,toDecrypt,tag,decryptedData,associatedData);
我已经安装了 openssl 并在 ~/.zshrc 中设置了 DYLD_LIBRARY_PATH
最初代码在 Intel Mac 上也损坏了,但由于我设置了 DYLD_LIBRARY_PATH,它起作用了。然而,它仍然在基于 arm 的 M1 Mac 上崩溃。
配置
- netcoreapp3.1
- 操作系统版本:Mac OS Big Sur 版本 11.4,(Apple M1),16 GB
- 架构:arm
- openssl 版本:LibreSSL 2.8.3,openssl@1.1
有人可以帮忙吗?这似乎是阻止我在 M1 Mac 上使用 .NET 进行开发的唯一问题。
解决方法
在Kevin的帮助下,我成功了install Intel version of openssl。
诀窍是use iTerm on Resetta 2 and install Intel version of brew然后安装英特尔版本的 openssl
- 复制应用程序目录中的 iTerm 并将其重命名为 iTerm (Intel)
- cmd + i 并勾选“使用重置打开”
- 在 iTerm (Intel) 上,安装 brew。它将安装在
/usr/local
arch -x86_64 /usr/local/bin/brew openssl
- 在
~/.zshrc
中,设置export DYLD_LIBRARY_PATH="/usr/local/opt/openssl@1.1/lib"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。