LoginSignup
21
16

More than 3 years have passed since last update.

macOS 10.15 CatalinaでAnacondaをインストールしようとしたらハマった

Last updated at Posted at 2020-03-04

macOS 10.15 CatalinaでAnacondaをインストールしようとしたらハマったのでその事象と解決策を書いておきます。

前提

  • macOS 10.15.3 Catalina
  • Anaconda 2019.10 for macOS Installer (Python3.7) を使ってanacondaを入れる。
    • 今回はちょっと触ってみたいだけなので出来るだけpyenvとかの世話にはならない。

事象

MacでのAnacondaでのインストールは基本的に以下の手順です。 ref:公式ドキュメント

  1. GUIインストーラでぽちぽちOKを押す。
  2. Spotlight SearchからAnaconda Navigatorを起動できればOK。

スクリーンショット 2020-03-04 16.31.36.png

この画面が出ればOKです。簡単ですね。

で、私はSpotlight SearchからAnaconda Navigatorを起動しようとした時点で以下の表示が出ました。

[15:59:06]% /Users/{user_name}/opt/anaconda3/pkgs/anaconda-navigator-1.9.7-py37_0/bin/anaconda-navigator ; exit;
zsh: /Users/{user_name}/opt/anaconda3/pkgs/anaconda-navigator-1.9.7-py37_0/bin/anaconda-navigator: bad interpreter: /opt/anaconda1anaconda2anaconda3/bin/python: no such file or directory

:confounded: ひぇ〜

原因

そもそもAnacondaのGUIインストーラ君はなにをしてるのでしょうか?
彼がやってることは(今回の問題に関係するところだと)大きく2つです。

  1. ~/opt/anaconda3 配下に、 Python本体やライブラリなど配置する。
  2. ~/.bash_profile にPATHなどの設定を追記する。

~/.bash_profileに入る内容は具体的に以下。

# added by Anaconda3 2019.10 installer
# >>> conda init >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$(CONDA_REPORT_ERRORS=false '/Users/{user_name}/opt/anaconda3/bin/conda' shell.bash hook 2> /dev/null)"
if [ $? -eq 0 ]; then
    \eval "$__conda_setup"
else
    if [ -f "/Users/{user_name}/opt/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/Users/{user_name}/opt/anaconda3/etc/profile.d/conda.sh"
        CONDA_CHANGEPS1=false conda activate base
    else
        \export PATH="/Users/{user_name}/opt/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda init <<<

で、実はMacのデフォルトのシェルはCatalinaでbashからzshになりました。
~/.bash_profile 読まれないじゃ〜んという話です。

というか、私が上に書いたエラーはそもそも ~/opt/anaconda3/bin/ 配下のanaconda-navigateではなく、
/Users/{user_name}/opt/anaconda3/pkgs/anaconda-navigator-1.9.7-py37_0/bin/anaconda-navigator を参照してます。
なんでやねん。

解決策

  1. ~/.bash_profile に追記されてた内容を ~/.zshrc にコピーする。
  2. ターミナルで env | grep PATH あたりで ~/opt/anaconda3/bin/にPATHが通ってるのを確認しましょう。
  3. ターミナルから anaconda-navigator を実行すればOKです。

落ち(この記事を書いたあとに気づいたこと)

公式ドキュメントにもありますが、実はLaunchPadにもショートカットが追加されていて、そこからAnaconda-Navigatorを起動すると ~/opt/anaconda3/Anaconda-Navigator を参照して起動するようです。Anaconda-Navigatorが色んな所にあり過ぎでわ。
まぁcondaコマンドとかを使うときに結局PATHを通す必要があるので、 ~/.bash_profile からの移植はやっておいたほうが良いと思います。

参考

  1. Anaconda を macOS にインストールする手順
  2. macOS 10.15 Catalina でターミナルのやつが zsh になった
21
16
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
16