mac os上で開発環境の整備 普段は可能な限り使用を避けているmac os 環境ですが、 なぜかプログラミング学習などを始めた人に採用されがちなので笑
mac os上で一通りの開発環境を整える手順を紹介します。
作成する環境
- base : mac os (Big Sur)
- Homebrew
- miniconda3
- python / pip
- VSCode
mac に限らずモダンなシステムで開発環境を整えるときの問題はパッケージマネージャ系のツールが 乱立していまうことです。とくに今回設定するminicondaは曲者なので慎重な設定が必要です。 pythonでの開発時には pip でライブラリを導入したい場合がありますが、miniconda内のpythonでpipを使った場合 condaのpython関連パッケージと干渉して import できなくなる場合があります。
よって、miniconda環境下では多少配慮が必要です。 conda内ではpipを使わない流派の人も存在するようですが、 今回はpipを使う専用のconda仮想環境を作成し、むしろこの仮想環境内で condaパッケージの導入を禁止する方針としようとおもいます。
設定
Homebrewの導入
まずはHomebrewが依存しているコンパイラ等の基本ツールを利用可能にするため mac os上の開発ツール xcode からコアツールのみを導入します。 ( xcode 全体を導入しても構いませんがかなり容量を食います・・・)
$ xcode-select --install
ライセンス表示等が出ますが無難に進めれば導入完了です。 この状態で homebrew 導入できます。
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew doctor
Your system is ready to brew
と表示されたら完了です。
minicondaの導入
homebrewが設定されていれば以下のコマンドのみで導入できます。
$ brew install --cask miniconda
$ conda init "$(basename "${SHELL}")"
これでPATH等も自動でよろしく設定されます。 ターミナルを一度停止して再度立ち上げるとプロンプトの先頭に(base)と表示されるはずです。
miniconda上に pip管理用の専用環境を作成 次にpipに管理を任せる専用の環境を作成します。
$ conda create -n env_python python
$ conda activate env_python
としてpython/pipの専用環境を作成し、環境に入ります。
この環境内では conda install 使用しないことに注意してくだい。
pipでpythonのパッケージを導入
# prompt の先頭が(env_python) となっていることを確認
# なっていない場合は conda activate env_python
$ pip3 install ipython jupyter jupyter_contrib_nbextensions matplotlib scipy numpy pandas seaborn plotly
その他pipで導入可能なライブラリ等のパッケージをインストールしておきます。 導入が終わったら
$ conda deactivate
でbase に戻ります。 戻ったら baseでは普通に conda install 使ってもOKです。
VSCodeの導入
VSCodeもHomebrewで導入できます。
$ brew install --cask visual-studio-code
これで導入完了です。 launchpadから起動できます。また、code コマンドでも起動できます。
VScode extensionの追加
pythonの開発環境を作る場合は、左バー、一番下のエクステンションから
python jupyter をそれぞれ検索して追加します。 この2つを install した場合、依存関係として pylance も導入されます。
pythonの開発を開始する。 これで準備は完了です。 VSCode左下から、システムに導入されているpythonの実行環境を選ぶことができるので 先ほど作成した env_python の python が選ばれていることを確認してください。 この設定が違うと、pipで導入したライブラリなどが見つからず import できない場合があります。
VScodeから 新しいファイルを作り、pythonのコードを書くことができます。
画面右上の三角ボタンからプログラムを実行できます。 VScodeは賢いので自動で condaの環境を activate してくれてます。
jupyter notebook 統合機能を使用する。 グラフィカルかつ対話的にpythonが使える jupyter notebookはpython開発の強い味方ですが VScodeでは jupyterを統合して利用することができます。 先ほど jupyter用エクステンションを導入済みなので簡単に利用できます。
command + shift + P で VSCode のコマンドパレットを開き jupyter を指定すると VSCode内で jupyter noteが操作可能になります。
jupyterを起動した時は右上の表示から 使用中の環境が condaで作成した env_python の pythonになっていることを確認します。
無事に matplotlib など pipで導入したライブラリが使用できるはずです。
お疲れ様でした。