LoginSignup
8
7

More than 3 years have passed since last update.

パッケージを再インストールせずにJuliaをupdateする方法

Last updated at Posted at 2019-05-17

今までJulia v1.0.2を使用していたのですが,先日v1.1.1がリリースされたのをきっかけに更新したのでその時の備忘録.

環境

macOS Mojave 10.14.4

Julia最新版のダウンロード

https://julialang.org/downloads/
から使いたいものをダウンロードします.
今回はv1.1.1をダウンロードしました.

Julia環境のコピー

デフォルトのままであればJuliaの環境の情報は ~/.julia/environmentsに保存されています.
なのでv1.1からもこの情報を呼び出せるようにします.

$ cp -r ~/.julia/environments/v1.0 ~/.julia/environments/v1.1

これでv1.1からも今までインストールしたパッケージを呼び出せるようになりました.

シンボリックリンクの作成

ターミナルからv1.1.1を呼び出せるようにします.

$ sudo rm /usr/local/bin/julia
$ sudo ln -s /Applications/Julia-1.1.app/Contents/Resources/julia/bin/julia /usr/local/bin/julia

これでターミナルから julia と打てばv1.1.1が呼び出されるようになりました.

jupyter notebook (lab) から使えるようにする.

調べてもあまり良い方法が見つからなかったので力技です.コメントで楽に出来る情報を頂いたので下に追記してます

まずjupyterで使用している環境を調べます.自分の場合はこんな感じの出力になりました(一部変えてます).

$ jupyter kernelspec list
  ir            /Users/name/Library/Jupyter/kernels/ir
  julia-1.0     /Users/name/Library/Jupyter/kernels/julia-1.0
  python3       /Library/Frameworks/Python.framework/Versions/3.7/share/jupyter/kernels/python3

/Users/name/Library/Jupyter/kernels/julia-1.0 で見ていることが分かったのでまずはディレクトリをコピーします.

$ cd /Users/name/Library/Jupyter/kernels
~/Library/Jupyter/kernels$ cp -r julia-1.0/ julia-1.1/

中身を見てみると kernel.json で管理していることが分かるのでコピーしたディレクトリにあるjsonを次のように書き換えます.

{
  "display_name": "Julia 1.1.1",
  "argv": [
    "/Applications/Julia-1.1.app/Contents/Resources/julia/bin/julia",
    "-i",
    "--startup-file=yes",
    "--color=yes",
    "--project=@.",
    "/Users/name/.julia/packages/IJulia/gI2uA/src/kernel.jl",
    "{connection_file}"
  ],
  "language": "julia",
  "env": {},
  "interrupt_mode": "signal"
}

変えたところは display_name と4行目のApplication以下に書いてあるjuliaのversionだけです.

最後にjupyter notebookでjuliaのカーネルを起動させてちゃんとversionが正しければ成功です.お疲れ様でした.

スクリーンショット 2019-05-17 17.56.00.png

2019/05/17 追記

IJuliaをbuildし直せば上記のようなめんどくさいことをしなくても良いみたいです.盲点でした...

]build IJulia

参考

8
7
2

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
8
7