京橋のバイオインフォマティシャンの日常

データ分析、コマンドライン、プログラミングについての技術資料・自己アップデート・悩み事などをまとめています。最近、ディープラーニング関連のR言語の資料をまとめるべく注力してます。

CentOS7に、R-4.0シリーズをインストールするTips

現在(2021年4月)、CentOS7のepelリポジトリからインストールできるRバージョンは、「R-3.6.0-1.el7.x86_64」である。

「R-4.x」シリーズをインストールするために、、、いろいろと試して、結局、、、 springdaleのリポジトリではなくて、 CRANにあるソースファイルからコンパイルするのが一番良さそうである。

また、CentOS版 Rstudio-server のRバージョンも「R-3.6.0」から「R-4.x」に変更した。

今回、実行した手順をメモしておく。

まずは、ターミナルを起動して、epel版Rとかを消しておく。

Rの削除

#epel版R の削除
sudo yum remove --enablerepo=epel -y R 

#/usr/binにある関連ファイルを探して削除する
ls /usr/bin | grep "R"

#削除
sudo rm -rf /usr/bin/R
sudo rm -rf /usr/bin/Rscript

#ホームディレクトリにRフォルダがあれば、削除しておく
#cd
#rm -rf R

Rのパスを確認すると、no R が表示される。

$ which R
/usr/bin/which: no R in (...)

R-4のダウンロード & コンパイル

最新版である、R-4.0.5をダウンロードする。

#CRANからのダウンロード
wget https://cran.r-project.org/src/base/R-4/R-4.0.5.tar.gz

#解凍
tar -zxvf R-4.0.5.tar.gz

#不要なファイルを削除
#rm -rf R-4.0.5.tar.gz

#Rディレクトリ内に移動
cd R-4.0.5

#コンパイル実行
sudo ./configure
#OR
#sudo ./configure --enable-R-shlib
#--enable-R-shlibを設定すると、結構時間がかかる
#--prefix: インストール先を指定できる。ex. --prefix=~/R

#make 実行(以下を順番に実行する、5-10分くらいかかる)
sudo make
sudo make check
sudo make install

上記の実行が完了すれば、Rのパスとバージョンを確認しておく。

which R
#/usr/local/bin/R

R --version
#WARNING: ignoring environment value of R_HOME
#R version 4.0.5 (2021-03-31) -- "Shake and Throw"
#Copyright (C) 2021 The R Foundation for Statistical Computing
#Platform: x86_64-pc-linux-gnu (64-bit)
#
#R is free software and comes with ABSOLUTELY NO WARRANTY.
#You are welcome to redistribute it under the terms of the
#GNU General Public License versions 2 or 3.
#For more information about these matters see
#https://www.gnu.org/licenses/.

#いちおう、不要なフォルダの削除
#cd ../
#sudo rm - rf R-4.0.5

Rstudio-server で、Rパスを確認する方法

R-4.0のインストール後に、一度、再起動することをお勧めする。

そうすると、Rstudio-server での設定が勝手に変わっているはず。

sudo rstudio-server restartだけでは、うまく設定が反映されなかった。。

Rstudio-serverにアクセスして、コンソールに以下が表示されて、 Rパスやライブラリパスが変更されていたら、OKである。

#ログイン時
#R version 4.0.5 (2021-03-31) -- "Shake and Throw"
#Copyright (C) 2021 The R Foundation for Statistical Computing
#Platform: x86_64-pc-linux-gnu (64-bit)

system("which R")
#/usr/local/bin/R

system("R --version")
#R version 4.0.5 (2021-03-31) -- "Shake and Throw"
#Copyright (C) 2021 The R Foundation for Statistical Computing
#Platform: x86_64-pc-linux-gnu (64-bit)
#
#R is free software and comes with ABSOLUTELY NO WARRANTY.
#You are welcome to redistribute it under the terms of the
#GNU General Public License versions 2 or 3.
#For more information about these matters see
#https://www.gnu.org/licenses/. 
 
.libPaths()
#[1] "/home/[Host name]/R/x86_64-pc-linux-gnu-library/4.0"
#[2] "/usr/local/lib64/R/library" 

補足

今回、r-libs-userrsession-which-rとかの設定は、特に不要だった。。

参考資料

https://web.chaperone.jp/w/index.php?RStudio/R4

stats.biopapyrus.jp