環境構築メモ: Julia 1.0.0 on Windows 10

Julia 1.0.0 環境を構築するとき、(おもに PyPlot.jl まわりで)少しハマったので、最終的にうまくいったやり方をメモとして残しておく。

既存の ナントカconda がある場合

以下では Miniconda 3 を C:\Miniconda3 へインストールしたものとする。
あらかじめ numpy と matplotlib を導入しておく。

Julia 1.0.0 のインストール

julialang.org/downloads からインストーラをダウンロード、実行する。

インストール先ディレクトリは、わかりやすい場所にしておくと便利。
ここでは C:\Julia-1.0.0 に設定した。

環境変数

Julia を起動するまえに、以下の環境変数をセットした。
(a) JULIA_BINDIR=C:\Julia-1.0.0\bin
(b) JULIA_PKGDIR=C:\Julia-1.0.0\Pkg
(c) PYTHON=C:\Miniconda3\python.exe
(d) CONDA_JL_HOME=C:\Miniconda3
(e) MPLBACKEND=qt4agg

あとは Julia の実行ファイルへのパスも通しておくと便利。
また、Julia 0.6 以前のユーザは、環境変数 JULIA_HOME を削除しておいたほうがよい(これは Julia 0.7 で廃止された環境変数)。

環境変数の解説

(a) Julia のバイナリがあるディレクトリ。
(b) Julia のパッケージを管理するディレクトリ。
これらは自分で設定しなくても、自動で設定してくれる。
カスタムしたいひと向け。

(c), (d) PyPlot.jl を導入する際、既存の Python を使わせたい場合に設定しておく。
手持ちの conda 環境がなければ、スルーして問題ない。
これら (c), (d) を設定しなければ、勝手に Miniconda がインストールされる。
conda で仮想環境を切りわけている場合は、(c)に構築先の python.exe, (d)に構築先ディレクトリを指定すればOK。

(e) PyPlot.jl を使う場合に、これを設定しておくと動作が安定する。
Windows 上で matplotlib のバックエンドに Qt 5 を使うと、プロット時に Julia が強制終了することがある (issue#278)。
Qt 4 やほかのバックエンドでは問題ないようなので、環境変数 MPLBACKEND を設定して常に qt4agg を使うようにしている。

ちなみに Julia 上での環境変数は、すべて ENV という辞書型変数に格納されているので、Julia のコードからいじることもできる。
上記の環境変数をWindows側で設定する代わりに、.juliarc.jl (Julia 起動時に実行されるスクリプト) に書き込む方法もある。
たとえば、こんな感じ。
ENV["MPLBACKEND"] = "qt4agg"

Julia を起動

問題なく起動すれば成功。

パッケージ導入

通常時に "]" キーを押すと、プロンプトがパッケージマネージャに変わる。
あとは add (パッケージ名) で、もりもりとパッケージを入れる。

普段はこの辺を使っている: PyPlot, WAV, FFTW, DSP

PyPlot については
julia> using PyPlot; plot(1:10);
で、手っとりばやく動作確認できる。

コメント

  1. 相変わらずすごいです!
    ぼくが気になっているhsposcmpももっと更新してほしいです!応援してます

    返信削除
    返信
    1. コメントありがとうございます。
      この記事ではPyPlot周りのハックについて書いていますが、いまはこのあたりの設定がなくてもちゃんと動作するかもしれません。

      hsposcmpですか! 懐かしい名前ですね。私自身その存在を忘れておりました。
      開発を止めてからかなり時間が経っていることもあり、残念ですが今後の更新は保証できません。

      もし重い腰を起こして次バージョンを作るとすればの話ですが、現在のhsposcmpは技術的に古くなってきているので、どこかで大きく刷新することになるのではないかと思います。

      削除

コメントを投稿

このブログの人気の投稿

基本波形の生成

(1)C言語で音声合成もどき ~WAVファイルを生成する~

(2)C言語で音声合成もどき ~母音の生成~