繁体   English   中英

Openssl library is not loaded at Mac M1 (Library not loaded: /usr/local/opt/openssl@1.1/lib/libssl.1.1.dylib)

[英]Openssl library is not loaded at Mac M1 (Library not loaded: /usr/local/opt/openssl@1.1/lib/libssl.1.1.dylib)

有人能帮助我吗? 我试图在我的 Mac 上运行 Python 自动化测试,在我的venv环境中使用PyTest但出现这样的错误:

库未加载:/usr/local/opt/openssl@1.1/lib/libssl.1.1.dylib

我试过重新安装 openssl:

brew reinstall openssl@1.1
..........

A CA file has been bootstrapped using certificates from the system keychain. To add additional certificates, place .pem files in   /opt/homebrew/etc/openssl@1.1/certs

and run   /opt/homebrew/opt/openssl@1.1/bin/c_rehash

openssl@1.1 is keg-only, which means it was not symlinked into /opt/homebrew, because macOS provides LibreSSL.

If you need to have openssl@1.1 first in your PATH, run:   echo 'export PATH="/opt/homebrew/opt/openssl@1.1/bin:$PATH"' >> ~/.zshrc

For compilers to find openssl@1.1 you may need to set:   export LDFLAGS="-L/opt/homebrew/opt/openssl@1.1/lib"   export CPPFLAGS="-I/opt/homebrew/opt/openssl@1.1/include"

我按照上面的建议做了:

echo 'export PATH="/opt/homebrew/opt/openssl@1.1/bin:$PATH"' >> ~/.zshrc 
source ~/.zshrc 
export LDFLAGS="-L/opt/homebrew/opt/openssl@1.1/lib" 
export CPPFLAGS="-I/opt/homebrew/opt/openssl@1.1/include" 

echo $PATH 
/Users/danylokholodov/Documents/my-project/Core_Platform/Code/my-project-qa-framework/venv/bin:/opt/homebrew/opt/openssl@1.1/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/Library/Frameworks/Python.framework/Versions/3.9/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/share/dotnet:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands

which openssl 
/opt/homebrew/opt/openssl@1.1/bin/openssl

但是在执行测试的时候还是有同样的错误:

../../../venv/lib/python3.9/site-packages/pymssql/__init__.py:3: in <module>
    from ._pymssql import *
E   ImportError: dlopen(/Users/danylokholodov/Documents/my-project/Core_Platform/Code/my-project-qa-framework/venv/lib/python3.9/site-packages/pymssql/_pymssql.cpython-39-darwin.so, 2): Library not loaded: /usr/local/opt/openssl@1.1/lib/libssl.1.1.dylib
E     Referenced from: /Users/danylokholodov/Documents/my-project/Core_Platform/Code/my-project-qa-framework/venv/lib/python3.9/site-packages/pymssql/_pymssql.cpython-39-darwin.so
E     Reason: image not found

我的 M1 上的正确解决方案是@Bhupendra singh negi的,但涉及正确的版本

brew reinstall openssl@1.1

echo 'export PATH="/opt/homebrew/opt/openssl@1.1/bin:$PATH"' >> ~/.zshrc

source ~/.zshrc

我修复了它安装 Anaconda,然后我用 Conda Environment 和 Python 3.8 创建了一个 ENV(在我的情况下是 python 3.8,因为 Psy 3.9 正在工作)。 然后我从 Anaconda->Environments->not installed 下载了 Pymssql。 然后我去了 pycharm 首选项上的 python 解释器,我选择了 anaconda 小徽标,然后 + 我在 ENV 上手动安装了 pymssql。

这适用于我的 M1

酿造安装 openssl

echo 'export PATH="/opt/homebrew/opt/openssl@3/bin:$PATH"' >> ~/.zshrc

来源 ~/.zshrc

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM