Zsh:当我尝试在venv中运行应用程序时,中止python错误当我、应用程序、错误、Zsh

2023-09-03 09:07:13 作者:踽踽独行

我使用pyenv设置了Python3.6,以便将来可以管理多个版本(例如3.7和3.8)。我没有使用Homebrew安装Python,因为它会更改系统版本。这是我第一次使用zsh外壳,因为它是Catalina OS中的默认外壳。目前,我的现有项目使用的是3.6.8版本。

所以这是我当前的设置:

% pyenv versions

解决运行Airtest脚本时opencv contrib python报错的问题

结果:

  system
* 3.6.8 (set by /Users/macbook/.python-version)
  3.7.3

% python -V结果Python 3.6.8

% which python结果/Users/macbook/.pyenv/shims/python

% echo $PATH结果/Users/macbook/.pyenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

我的~/.zshrc的内容是PATH=$(pyenv root)/shims:$PATH

我使用% python -m venv venv创建了一个虚拟环境,安装了所有必需的包,当我激活它并获得python路径时,

(venv) % python -V
Python 3.6.8

(venv) % which python
/Users/macbook/python-project/venv/bin/python

(venv) % echo $PATH
/Users/macbook/python-project/venv/bin:/Users/macbook/.pyenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

最后,当我尝试运行该应用程序时,我总是收到zsh: abort错误:

(venv) % python app.py
zsh: abort      python app.py

(venv) % export FLASK_APP=app.py
(venv) % flask run
zsh: abort      flask run

我不知道还缺少什么,或者我的python路径是否有问题?

谢谢!

推荐答案

在网上搜索后,我认为这是最新的MacOS或Homebrew的常见问题。此thread已修复问题。

brew update && brew upgrade && brew install openssl

将这两个文件从/usr/local/cella/openssl@1.1/1.1.1g复制到/usr/local/lib/

cd /usr/local/Cellar/openssl@1.1/1.1.1g/

sudo cp libssl.1.1.1.dylib libcrypto.1.1.1.dylib /usr/local/lib/

将符号链接添加到缺少的OpenSSL库

cd /usr/local/lib

sudo ln -s libssl.1.1.1.dylib libssl.dylib

sudo ln -s libcrypto.1.1.1.dylib libcrypto.dylib