once upon a time,

Iris Tradをビール片手に聞くのが好きなエンジニアが、機械学習やRubyにまつわる話を書きます

Julia環境構築 2014 ver. #julialang

Julia Advent Calendar 2014 3日目の記事です。

1日目、2日目の記事を読んで、とりあえず試してみよう!と思った人のためのお話です。

Macに移って久しいのでWindows, Linuxの事情は薄くなりますがご勘弁を。

事前知識

Juliaはまだまだ鋭意開発中の言語なので、変化が激しいです。 割とStableを使ってる人が少ないかもしれません。なので、Stableの導入の仕方とNightly buildsの入れ方を書いておきます。

自分はv0.4(Nightly builds)を使ってます。 少なくとも、2014年には0.2系以前を試す必要は無いと思います。

入れるもの

  • Julia
  • anaconda
  • IJulia
  • LightTable(IDEが欲しければ)

Julia

Windows

バイナリをダウンロードするのが一番手軽です。

StableもNightlyもこれでいいでしょう。

Mac

お手軽に試すには

バイナリをダウンロードするのが一番手軽です。

/Applications/Julia-0.X.X*.app/Contents/Resources/julia/bin/julia~/bin/以下にシンボリックリンクを貼るなどして、PATHを通しておくとよいでしょう。

Homebrew

githubからcloneしてビルドするのも良いですが、homebrewから入れるのが楽です。

$ brew update
$ brew tap staticfloat/julia
$ brew install julia

Nightlyを入れるには

$ brew install julia --HEAD

でOKです。

gccとかを更新した時は、arpack-juliaとopenblas-juliaを削除すると良いでしょう。

Ubuntu

Stable

PPAを使ってaptで取得できるようにするのが楽です。

$ sudo add-apt-repository ppa:staticfloat/juliareleases
$ sudo add-apt-repository ppa:staticfloat/julia-deps
$ sudo apt-get update
$ sudo apt-get install julia

14.10からは普通にapt-get install juliaで入るようです

Nightly

$ sudo apt-add-repository ppa:staticfloat/julianightlies
$ sudo apt-add-repository ppa:staticfloat/julia-deps
$ sudo apt-get update
$ sudo apt-get install julia

RHEL/CentOS

RHEL系はEPEL使えば行けるそうです

IJulia/anaconda

IJuliaはIPythonをベースにしたブラウザ上で動くJuliaの対話環境です。ガッツリパフォーマンスチューニングしたい人には向かないですが、グラフ書いたり分析したい人には適しています。 また、LightTableなどのエディターで実行結果を表示する時にも必要になるので入れておくのが良いでしょう。

IPythonの環境を入れるのがだるいので、Pythonの環境がまだないよ/こだわりないよって人は、anacondaを使うと良いでしょう。 MacでもシステムPythonだとIPythonのバージョンが古いとかなんとか色々はまるので、anacondaにしておくのが良いでしょう。

少し前のですが下記のサイトやIJulia本家の記述が参考になりますが、こちらにも簡単にまとめておきます。

IPython(Anaconda)とIJuliaが凄すぎる件 - アドファイブ日記

JuliaLang/IJulia.jl · GitHub

  1. anacondaをダウンロードして入れる
  2. IJuliaを入れる
Pkg.add("IJulia")

anacondaが入っていればこれで大丈夫なはずです。後は下記でIJuliaを起動後、適当なノートブックを作って試しましょう。

$ ipython notebook --profile julia

便利なショートカットはこちら

ipython 0.12 の notebook - akameganeの日記

LightTable (optional)

emacsvimでjuliaのプラグインを入れるのも良いと思いますし、IDE的なものが欲しいよという人はLightTableを使うといいです。 補完もできて、Cmd+Enterで実行結果も確認できます。

Sublime-IJuliaもあるようですが使ったことがありません。

Lightable - LightTable + JewelでJuliaの環境を作る - Qiita

ちなみに

JuliaのREPLは実はかなり強力で、対話的に開発したいだけならREPLだけで良いという人もいます。

僕自身は、なんだかんだでREPL+SublimeTextで書くことが多いです。

明日は再びbicycle1885さんです。