=======
OSX10.7 lion編
rincanterを使用しようとして苦労したので設定をメモ
まずRはhomebrewからインストールしたものを使う前提とします。
jdkのインストール
jdkが必要なのでインストールするのですが、デベロッパサイトからのダウンロードが必要です。デベロッパー登録が必要なので登録しましょうデベロッパー登録したら
デベロッパサイト
https://developer.apple.com/jp/resources/
へ行きMac OS X DownloadsからJava for OS X Developer Packageの最新版をダウンロードしてインストールします。
すでにjreをインストールしていた場合、jdkを使用する必要があるので
ユーティリティからJava Preferenceを起動し優先する順位を最初にします。
Rの設定
次にRにjvm関連の変更を再設定するためにターミナルを立ち上げ
$ R CMD javareconf
と入力しますrootで実行せよとなっていますがhomebrewではユーザ権限でOKです。
Rを起動しrjavaパッケージをインストールします。
install.packages('rJava')
confiureが走りコンパイルが始まりますエラーが出ずインストールが終了すればOK
コンパイルが失敗する場合、
R_HOMEの設定をする
homebrewでは不要ですがPackage版では必要なようです
jdkがインストールされていないとjnilibがコンパイルできずjni.hが見つからないというエラーがでます。
rincanterのインストール
これでrincanterのインストール準備が完了します。
Clojureへのインストールはleiningenから行うことにすると
project.cljはこんな感じ
incanterとrincanterは最新版をclojars.orgで検索して最新版を指定します。
(defproject rincantersamp "1.0.0-SNAPSHOT"
:description "FIXME: write description"
:dependencies [[org.clojure/clojure "1.3.0"]
[incanter "1.3.0"]
[org.clojars.guv/rincanter "1.1.0"]]
:dev-dependencies [[swank-clojure "1.4.1"]])
ここからはad-hocなやり方ですが、
lein deps後rjavaのラブラリをlibsコピーします。
対象は
/usr/local/Cellar/r/{Rのバージョン}/R.framework/Resouces/library/rJava/jri
のJRI.jar,REngine.jar,JRIEngine.jar
をプロジェクトのlibsへコピーします。
このままだとlein swank時に実行ライブラリが見つからないと怒られるので
libjri.jnilibをproject.cljと同一のディレクトリへコピーします
そして
$ lein swank
で実行
Ubuntu編
手順は、ほぼOSX編と同じですライブラリ関連とパッケージマネージャーからJDKをインストールすることぐらいが違いとなります。
RとJDKのインストール
パッケージマネージャからRとJDKをインストールする。
共有ライブラリの設定(環境変数)
libjvm.soが無いと怒られるので、ありかの指定をする
.profile または.bashrc等に環境変数の設定をする
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/jvm/default-java/jre/lib/i386/jamvm
を追加
Rの設定
OSX編と同様に
Rにjvm関連の変更を再設定するためにターミナルを立ち上げ
$ R CMD javareconf
と入力します
Rを起動しrjavaパッケージをインストールします。
install.packages('rJava')
confiureが走りコンパイルが始まりますエラーが出ずインストールが終了すればOK
rincanterのインストール
lein new {project}
でプロジェクトを作成後OSX編と同様に
project.cljを作り
(defproject rincantersamp "1.0.0-SNAPSHOT"
:description "FIXME: write description"
:dependencies [[org.clojure/clojure "1.3.0"]
[incanter "1.3.0"]
[org.clojars.guv/rincanter "1.1.0"]]
:dev-dependencies [[swank-clojure "1.4.1"]])
ターミナルから
lein deps
を実行します
rJava関連のjarをコピー
lein deps後rjavaのラブラリをlibsコピーします。
rJava関連のjarファイルは
~/R/i686-pc-linux-gnu-library/2.13/rJava/jri
以下にあるので、このディレクトリのJRI.jar, JRIEngine.jar, REngine.jar
をleinで作成したプロジェクトのlibへコピー。
lein swankのための設定
このままではlibjri.soを見つけられないと怒られるので、
leinで作成したプロジェクトのディレクトリへ
~/R/i686-pc-linux-gnu-library/2.13/rJava/jri
から libjri.soをコピーします
そして
$ lein swank
で実行