Mac - 安裝 brew、pyenv、pyenv-virtualenv

xx online
xx want to say something
3 min readJan 14, 2019

pyenv 用來控管 python 的版本
pyenv-virtualenv 用來區隔 python 工作環境

找了很多文章,pyenv 安裝的方法很多種,但大多都是在 ubuntu 上執行
比如 apt-get install 指令沒有之類的,最後還是去了官網
說是要用 brew 來安裝,
但 mac 也是要另外裝 brew,所以又來到 brew 的官網
來照官網的指令來安裝吧

/usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

接下來回到 pyenv ,直接下指令安裝,如果有需要,也可以下 upgrade 來更新版本

$ brew update
$ brew install pyenv
$ brew upgrade pyenv

然後要加東西到 ~/.bash_profile 這個檔案中

export PYENV_ROOT=/usr/local/var/pyenv
if which pyenv > /dev/null; then eval “$(pyenv init -)”; fi

然後再裝 pyenv-virtualenv

brew install pyenv-virtualenv

一樣,再加一行到 ~/.bash_profile 這個檔案中

if which pyenv-virtualenv-init > /dev/null; then eval “$(pyenv virtualenv-init -)”; fi

重開終端機,讓參數生效
結果安裝不同版本的 python 出現錯誤訊息,說是要安裝 zlib
再上網找找,原來是要安裝 zlib,因為安裝 python 的過程要經過編譯
一樣用 brew 安裝,然後再 link 到 lib,這樣就可以裝不同版本的 python了

brew install zlib
brew link zlib — force

補充一下,因為用 pyenv 裝了 2.7.8 版本的 python 沒有 sqlite 的模組,所以重裝 pyenv
不同的地方是 pyenv-virtualenv 是在 pyenv 的 plugin 裡

curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash

直接裝 pyenv install 2.7.9 還是會沒辦法裝 sqlite3 這個模組,編譯有錯,
sqlite-devel 也裝不起來, sqlite3 也裝不起來
最後還是只能用下面的指令來安裝才可以 (zlib 一定要裝)

CFLAGS=”-I$(xcrun — show-sdk-path)/usr/include” pyenv install -v 2.7.9

--

--