MAC 安装Pyenv-virualemv

安装pyenv

git clone https://github.com/pyenv/pyenv.git ~/.pyenv

设置环境变量

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile

#   刷新配置文件
source ~/.bash_profile

#   对于zsh,使用~/.zshenv替换~/.bash_profile
#   对于Ubuntu和Fedora,~/.bashrc用替换~/.bash_profile
#   如果zsh和bash切换着用,那么./zshrc和./bash_profile都要改,不然会出现找不到命令的报错

增加pyenv到shell

echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
#   对于zsh,使用~/.zshenv替换~/.bash_profile
#   对于Ubuntu和Fedora,~/.bashrc用替换~/.bash_profile
#   如果zsh和bash切换着用,那么./zshrc和./bash_profile都要改,不然会出现找不到命令的报错

重启shell

exec "$SHELL"

MAC homebrew安装

brew update
brew install pyenv

安装zlib依赖

# 3.7.2版本需要,否则会报错
brew install zlib
#   将 zlib 的头文件及库文件添加至系统默认的路径,如果更新 zlib 版本记得重新添加,否则可能会出现问题:
#   不同时候安装的时候版本不一样,需要对应修改下
ln -s /usr/local/Cellar/zlib/1.2.11/include/* /usr/local/include
ln -s /usr/local/Cellar/zlib/1.2.11/lib/* /usr/local/lib

卸载pyenv

#   通用
rm -rf $(pyenv root) 
#   Mac
brew uninstall pyenv

更新 pip

pip install --upgrade pip

升级 pyenv

cd /Users/akiraka/.pyenv/plugins/python-build/../.. && git pull && cd -

安装并使用python版本

#   查看可用版本
1)  pyenv install --list
#   安装一个如
2)  pyenv install 3.6.5
#   如果报错
BUILD FAILED (Ubuntu 16.04 using python-build 1.1.3-21-g005a2e8)
#   Ubuntu/Debian:
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
xz-utils tk-dev
#   edora/CentOS/RHEL:
dnf install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel xz xz-devel
#   Mac OS X:
brew install readline xz
小技巧: 执行上面命令后,会从给定的网址中下载安装文件Python-3.6.2.tar.xz。但由于文件很大,下载需要很久。建议做法是:先执行以上命令然后马上中断安装,这样就知道 pyenv 要下载的文件的链接。然后用户自己用其他更快的方式(比如wget、迅雷等等)从该链接中下载安装文件并将安装文件移动到 ~/.pyenv/cache 目录下(该目录默认不存在,用户要自行新建),再执行上面的命令。编译安装本身也需要较长时间。默认安装路径是~/.pyenv/versions/3.6.2/

离线安装Python

pyenv 安装很慢的解决办法: 
#   1.先在 ~/.pyenv 目录下创建一个 cache目录
mkdir ~/.pyenv/cache
#   2.进入cache目录
cd ~/.pyenv/cache
#   3.下载3.7.2版本
wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tar.xz
#   4.开始安装3.7.2版本,会比较慢因为需要验证版本,有问题会重新下载
pyenv install -v 3.7.2

查看版本

#   查看所有版本
pyenv versions
#   查看当前版本
pyenv version
#   system 代表当前系统的python 版本
*表示当前的python版本, 可以看到, 我们还在使用的是默认的system 自带的python版本

切换python默认版本

pyenv global 3.7.2

安装pyenv-virtualenv插件

#   clone一个pyenv项目
1) git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
#   定义环境变量
2) echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
#   对于zsh,使用~/.zshenv替换~/.bash_profile
#   对于Ubuntu和Fedora,~/.bashrc用替换~/.bash_profile
#   如果zsh和bash切换着用,那么./zshrc和./bash_profile都要改,不然会出现找不到命令的报错

创建一个3.7.2虚拟环境

pyenv virtualenv 3.7.2 Name
#   这条命令在本机上创建了一个名为env362的python虚拟环境,这个环境的真实目录位于:~/.pyenv/versions/
pyenv versions

使用3.7.2虚拟环境

pyenv activate Name

关闭3.7.2虚拟环境

pyenv deactivate

卸载3.7.2虚拟环境

pyenv uninstall Name

虚拟环境Django位置

/Users/akiraka/.pyenv/versions/3.6.5/envs/DTest/lib/python3.6/site-packages/django/contrib/admin/templates/admin

解决可能会出现的“*** [install] Error 1”错误

注:如果没有出现此错误请跳过此步骤

在执行通过 pyenv 安装所需版本的 Python 命令行后,可能会出现以下错误:

zipimport.ZipImportError: can't decompress data; zlib not available 
make: *** [install] Error 1
1
2
下载并安装命令行工具,在终端输入:
xcode-select --install

再次使用 pyenv 安装所需版本的 Python,在终端输入:
pyenv install <version>

以安装 Python-3.6.0 为例,在终端输入:
pyenv install 3.6.0

通过pyenv查看已安装过的 Python 版本,在终端输入:
pyenv versions

若安装正确,终端中会显示当前安装的 Python 版本信息:

注:系统自带版本的 Python 显示为 system,当前正在使用的 Python 版本前有星号作为标识。

.bash_profile和.bashrc的区别(如何设置生效)

/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.

/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.

~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该
文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.

~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该
该文件被读取.

~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.

版权声明:
作者:Akiraka
链接:https://www.akiraka.net/mac_os/121.html
来源:Akiraka
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
海报
MAC 安装Pyenv-virualemv
安装pyenv git clone https://github.com/pyenv/pyenv.git ~/.pyenv 设置环境变量 echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/……
<<上一篇
下一篇>>
文章目录
关闭
目 录