M1 MacのPython,Node.js環境設定(Homebrew、pyenv、nvm)
本記事について
Homebrewをインストールする
Homebrewをインストールしていない場合は、下記コマンドにてインストールする。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Homebrew公式ページ
brewコマンドでpyenvとpyenv-virtualenvをインストールしようとするとエラーが出る
下記コマンドにてpyenvとpyenv-virtualenvをインストールしようとする。
brew install pyenv pyenv-virtualenv
エラーメッセージとして「zsh: command not found: brew」が出る。
エラー解決方法
Homebrewを実行するための、環境設定ができていなかったようです。
.zprofileに環境設定を記述
実行ディレクトリ(カレントディレクトリ)は/Users/Username/です。
下記のコマンドを順番に実行するだけで、.zprofileが書き換わるみたいです。
(.zprofileを開いて編集する必要はありません)
コマンド1にて/Users/Username/.zprofileを指定
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/Username/.zprofile
コマンド2にて.zprofileに何を記載するか指定
eval "$(/opt/homebrew/bin/brew shellenv)"
コマンド3にて.zprofileの中身が書き換わっているか確認してみましょう。
cat .zprofile
.zprofileが下記のように書き換わっていればOKです。
eval "$(/opt/homebrew/bin/brew shellenv)"
時間がある時に下記を参考にしてHomebrewの使い方を学んでおくと良いでしょう。
.zshrcを開いて編集してパスを設定して保存する
open /Users/Username/.zshrc
.zshrcファイルに下記のようにパスを設定して保存する
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
.zshrcファイルに設定した内容を反映させる
source .zshrc
pyenvにインストールできるpythonのバージョン一覧を表示します
pyenv install --list
pyenvにpythonのバージョンを指定してインストールします
pyenv install 3.11.0
pyenvにインストールしたバージョンを確認します
pyenv versions
* system (set by /Users/owner/.pyenv/version)
3.11.0
バージョン3.11.0がインストールされているのを確認できました。
pythonのバージョンを切り替えます
pyenv global 3.11.0
バージョンが切り替わったか確認します。
pyenv versions
system
* 3.11.0 (set by /Users/owner/.pyenv/version)
※がついているのが現在使用しているバージョンです。
上記の場合、3.11.0の環境が使用されています。
Python3.11.0のエイリアスを作成する
pyenv virtualenv 3.11.0 schemaenv
pyenvにschemaenvが作成できたかを確認します
pyenv versions
system
* 3.11.0 (set by /Users/owner/.pyenv/version)
3.11.0/envs/schemaenv
schemaenv
schemaenvのエイリアスが作成されているのが確認できます。
作成したschemaenvエイリアスに切り替えます
pyenv activate schemaenv
VSCODEにpathを通します。
VSCodeを開き画面左下の歯車マークを押します。設定を押します。
コマンドパレットにpython: selectと入力して、Python: Default interpreter Pathに.pyenvを保存してあるディレクトリをフルパスで記載する。
VSCodeを一度閉じ、再度開きます。Command + Shift + P を押してコマンドパレットを開きます。Pytho:インタープリターを選択を選びます。
作成したschemaenvを選択します。
これで、作成したpyenvやエイリアスをVSCODEに設定できるようになる。
brewコマンドでnvmをインストールする
brew install nvm
.nvmフォルダを作成します。
mkdir ~/.nvm
.nvmフォルダを作成できたことを確認します
open ~/.nvm
.zshrcを開いて編集してパスを設定して保存する
open /Users/Username/.zshrc
.zshrcファイルに下記のようにパスを設定して保存する
export NVM_DIR="$HOME/.nvm"
[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh" # This loads nvm
[ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" # This loads nvm bash_completion
.zshrcファイルに設定した内容を反映させる
source .zshrc
nvmが正常にインストールされていることを確認します
nvm -v
0.39.3
上記の場合、nvmのバージョンは0.39.3がインストールされています。
nvmにインストールできるバージョン一覧を確認します
nvm ls-remote
nvmにnode.jsのバージョンを指定してインストールします
nvm install v18.8.0
nvmにnode.jsの安定している最新のバージョンをインストールします
nvm install stable
現在、選択しているnode.jsのバージョンを確認します
nvm current
v19.6.0
上記の場合、Node.jsのバージョンはv19.6.0が選択されています。
nvmにインストールしているnode.jsの一覧を確認します
nvm ls
v18.8.0
-> v19.6.0
default -> v19.6.0
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v19.6.0) (default)
stable -> 19.6 (-> v19.6.0) (default)
lts/* -> lts/hydrogen (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.21.2 (-> N/A)
lts/gallium -> v16.19.0 (-> N/A)
lts/hydrogen -> v18.14.0 (-> N/A)
インストールしたバージョンがv19.6.0とv18.8.0なのでその2つが表示されています。
また、->マークで表示されているのが、現在選択されているバージョンです。
上記の場合、Node.jsのv19.6.0が選択されています。
現在選択しているnode.jsを他のバージョンに切り替えます
nvm use v18.8.0
Now using node v18.8.0 (npm v8.18.0)
現在選択しているnode.jsのバージョンを確認します
nvm current
v18.8.0
上記の場合、Node.jsのバージョンはv19.6.0が選択されています。
Node.jsのバージョンはv19.6.0 → v18.8.0に切り替わっています。
Discussion