juliaのPyCallを使おうとして手こずった話

homebrewでjuliaを入れるのは非推奨。

使っているパソコンはMacBook Air。 なので、はじめはhomebrewでインストールした。 Pkg.add("PyCall") でインストールするまではうまくいったが、 いざスクリプトを書いて実行しようとすると using PyCall のところでエラーになる。

どうもhomebrewでインストールしたjuliaだとこのエラーが発生するらしい。 公式のバイナリを落としてくることにした。

公式juliaの設定

公式のダウンロードページ からjuliaをダウンロードし、インストールした。

最初、/Applications/Julia-0.4.6.app/Contents/MacOS/Julia を起動したらなぜかターミナルが起動して別ウィンドウが開いた。 iTermで普通にjuliaを使いたいので、調べたら/Applications/Julia-0.4.6.app/Contents/Resources/julia/bin/juliaが普通にiTermで使えるやつらしい。

このままではコマンドとして使えないので、シンボリックリンクを貼る。

$ ln -s /Applications/Julia-0.4.6.app/Contents/Resources/julia/bin/julia /usr/local/bin/julia

これでjuliaが使えるようになった。

PyCallの設定

私はpyenvでpython2と3両方使える環境にしているのだが、普通にPyCallをインストールするとpython2のライブラリを見に行ってしまう。 python3を見に行ってほしいので、以下のようにインストールした。

ENV["PYTHON"] = "/Users/username/.pyenv/versions/3.5.2/bin/python3"
Pkg.add("PyCall")

これでPyCallが使えるようになった。using PyCallしてもエラーが出ない! 素晴らしい。