解决python venv虚拟环境无法安装 uwsig

简单说,如果你装了brew,只要输入

然后

pyenv install 3.6-dev

就能安装python3.6-dev版本了

背景

在Mac系统中,使用pycharm新增了个虚拟python开发环境。然后使用 pip install uWSGI时报错。
报错内容如下:

Running setup.py install for uWSGI ... error
    """ Complete output from command /Users/user/python_venv/exchange-qa-tool/bin/python -u -c 
"import setuptools, 
tokenize;__file__='/private/var/folders/5w/74s75glj5dx47gd7wnpyxdbr0000gn/T/pip-install-
_t3aoo7z/uWSGI/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', 
'\n');f.close();exec(compile(code, __file__, 'exec'))" install --record 
/private/var/folders/5w/74s75glj5dx47gd7wnpyxdbr0000gn/T/pip-record-9o3x20d_/install-record.txt --
single-version-externally-managed --compile --install-headers /Users/user/python_venv/exchange-qa-
tool/include/site/python3.7/uWSGI: """

    clang: error: no such file or directory: '/Users/user/python_venv/exchange-qa-tool/lib/python3.7/config-3.7m/libpython3.7.a'
    *** error linking uWSGI ***
""" Command "/Users/user/python_venv/exchange-qa-tool/bin/python -u -c "import setuptools, 
tokenize;__file__='/private/var/folders/5w/74s75glj5dx47gd7wnpyxdbr0000gn/T/pip-install-
_t3aoo7z/uWSGI/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', 
'\n');f.close();exec(compile(code, __file__, 'exec'))" install --record 
/private/var/folders/5w/74s75glj5dx47gd7wnpyxdbr0000gn/T/pip-record-9o3x20d_/install-record.txt --
single-version-externally-managed --compile --install-headers /Users/user/python_venv/exchange-qa-
tool/include/site/python3.7/uWSGI" failed with error code 1 in 
/private/var/folders/5w/74s75glj5dx47gd7wnpyxdbr0000gn/T/pip-install-_t3aoo7z/uWSGI/ """

原因

各种搜索后,发现问题是因为缺少 python-devel导致。下面教程是Mac下安装python-devel的步骤。Windows用户可以使用 yum install python37-devel 命令进行安装。

解决步骤

系统信息

操作系统:Mac OS 10.15.3 Catalina
python版本:python3.7
需要安装 brew

第一步:安装 pyenv

直接使用brew 命令进行安装:brew install pyenv


image.png

image.png

第二步 :将pyenv 加入到系统变量

1、编辑bash_profile文件
执行命令: vi ~/.bash_profile,将如下指令添加到 bash_profile文件中。保存。

export LDFLAGS=-L/usr/local/opt/readline/lib
export CPPFLAGS=-I/usr/local/opt/readline/include
export PKG_CONFIG_PATH=/usr/local/opt/readline/lib/pkgconfig

2、执行 source ~/.bash_profile 命令,使文件生效。

第三步:使用 pyenv 安装 python-dev

1、执行命令:pyenv 3.7-dev。
注意:要根据你的实际python版本来安装。比如我的虚拟环境使用的是python3.7.3,那么我就执行:pyenv 3.7-dev安装。
见附图,安装成功。


image.png

第四步: 执行 pip install uwsgi

这下看就能安装成功了。哈哈。输入uwsgi验证下。


image.png

你可能感兴趣的:(解决python venv虚拟环境无法安装 uwsig)