MinGWでビルドしたEmacsを使ってるんですが、依存ライブラリとかの関係でmsys64.exe
から立ち上げる必要があります。
Rが見つけられないという問題はinferior-R-program-name
を指定しておけば大丈夫なんですが、
;; specify the location of R (setq inferior-R-program-name "C:/Program Files/R/R-3.5.0/bin/R.exe")
もうひとつ問題は、HOMEが違うことです。
path.expand("~") #> [1] "C:\\msys64\\home\\hiroaki-yutani"
このため、ユーザ用のRのライブラリがインストールされているパス(C:/Users/ユーザ名/Documents/R/win-library/3.5
みたいなほう)を見てくれません。
.libPaths() #> [1] "c:/Program Files/R/R-3.5.0/library"
対処法は、必要な環境変数を指定しておくことです。
(setenv "R_ENVIRON_USER" "c:/Users/ユーザ名/Documents/.Renviron") (setenv "R_PROFILE_USER" "c:/Users/ユーザ名/Documents/.Rprofile") (setenv "R_LIBS_USER" "c:/Users/ユーザ名/Documents/R/win-library/3.5")
ちなみにハマったこととしては、R_LIBS_USER
に指定するパスは最後に/
を含めてはだめっぽいこと。
;; これだとだめ (setenv "R_LIBS_USER" "c:/Users/ユーザ名/Documents/R/win-library/3.5/")
もうちょっといい方法あるのかな...