はじめに
新しい言語やツールをインストールするたび、PATH解決で引っかかるので、調べたこと、記事をまとめておく。
PATH難しい、、、
インストールしたパッケージやコマンドが実行できなかったら、PATHがうまく設定できていないことを疑った方がいい。
基本
結論から言うとPATHを通すことで、どこのフォルダからでも実行したいファイルを呼ぶことができるということだ。
設定ファイル
デフォルトの設定ファイルは
- zshの場合 .zshrc
/usr/local/bin/zsh と /bin/zsh の違い
chatGPTによると
/usr/local/bin/zsh: 通常、ここにはシステムの標準の外部プログラムやユーザーが手動でインストールしたプログラムが配置されます。ユーザーが手動でインストールしたZshの実行ファイルがここに存在する可能性があります。通常、このパスはシステムの標準の実行ファイルパスよりも優先されるため、手動でインストールしたプログラムが優先的に使用されます。
/bin/zsh: 通常、システムの標準の実行ファイルパスにあるプログラムがここに配置されます。システムが提供するZshの実行ファイルがここに存在する可能性があります。
これらのパスの違いは、ファイルの配置と優先順位に関係しています。一般的には、ユーザーが手動でインストールしたプログラムはシステムの標準のプログラムよりも優先されます。
パスを通したいときは、
/usr/local/bin/zshに書き込むようにするとよさそう。
設定方法
export PATH=(パス):$PATH
以下で反映させる
source ~/.bash_profile
失敗したこと
失敗したこと1
echoでpathを通そうとしたた失敗して、vimなど使えてたコマンドが使えなくなった。
解決策 VScodeで編集する
「command」+「shift」+「.」 で、隠しファイルが表示されるので、Vscodeで開いてエラーが発生した原因と思われるものを削除すればいい。
原因は export path を複数宣言した、後者に宣言された PATH で更新されたため、既存のものが読み込まれなくなった。
PATHを編集するときは、コロン繋げることを注意する。
修正、ターミナルを再起動して、以下コマンドを打って解決。
source .zshrc
失敗したこと2
VSCodeでPythonを実行したら、追加モジュールをimportできなかった。
調べてみたら、VSCodeのターミナルが普通のターミナルと別のPATHを見ていた。
ターミナルによってPythonの実行環境が異なることがあるらしい
解決策
Code > Preferences > Setting
で設定を開く
検索窓で
terminal.integrated.inheritEnvをを検索して、チェックボックスを外す。
すると、PATHがターミナルと統一される。