アメリエフの技術ブログ

Amelieff Staff Blog

手っ取り早くRをビルドしてインストールする

趣旨

シングルセルRNA解析の一環でmonocle3を用いた疑似系譜解析を実施するのにR3.6.3以上が必要なのですが、
EPELでyumってインストール出来るバーションは3.6.0なので困ってしまいます。
可愛い後輩から相談されたので、以下にRをソースコードからビルドしてインストールするまでのタイムアタックコマンドを記します。
f:id:miwa-t:20201006160950p:plain:w200
※ 最短経路を示すので、環境の違いなんかは度外視してます。適時補完してください。

環境

  • OS: CentOS 7系
  • R: v3.6.3

コマンド

cd /usr/local/src
sudo wget https://cran.r-project.org/src/base/R-3/R-3.6.3.tar.gz
sudo tar xf R-3.6.3.tar.gz
cd R-3.6.3
sudo yum install readline readline-devel libXt.x86_64 libXt-devel.x86_64
sudo ./configure
sudo make
sudo make install
R

終わり!!




蛇足な解説

cd /usr/local/src

チームで使う場合はホームディレクトリ等にはダウンロードしないようにしましょう。

sudo wget https://cran.r-project.org/src/base/R-3/R-3.6.3.tar.gz

Rの公式サイトからファイルをダウンロードしてくるわけですが、/usr/local/srcは共用部なのでsudoで処理します。

sudo tar xf R-3.6.3.tar.gz

解凍して、

cd R-3.6.3

ディレクトリの中に移動します。

sudo yum install readline readline-devel libXt.x86_64 libXt-devel.x86_64

今回の肝はここです。
大抵の場合、このままconfigureを実行すると、
configure: error: --with-readline=yes (default) and headers/libs are not available
とか
configure: error: --with-x=yes (default) and X11 headers/libs are not available
こんなエラーがで出ます。
オプションを設定することで、このあたりは無視してインストールすることも可能なのですが、
Tab補完やHistoryの呼び出し、X serverを用いたx forward等に関わる重要な部分なので、正々堂々正面突破しましょう。

sudo yum install readline readline-devel libXt.x86_64 libXt-devel.x86_64

ということで、各々で必要になるライブラリをyumります。

sudo ./configure

これで大抵の場合通ります。

sudo make

buildして、

sudo make install

インストールしたら

R

起動できます。

その他よくあるトラブル

zlib周りのエラーは時々見るかなぁ。
あとR studioとか使いたい人はオプションの指定が必要になったりします(ここでは喋らないけど)。

あとがき

僕はVimを使ってScriptごとにファイル保存するタイプなので、Rstudioは使わない(学生の頃は少し使ってた)のでインストール手順はこれで十分。
あ、「vim使ってる」とか言うとemacs派の人に迫害されちゃうかしら・・・(・_・;)
両方とも素晴らしいテキストエディタなので、手を取り合って仲良くしましょうよ!!

ちなみに僕は「きのこの山」派です。 タケノコ派が信じられません。

では!