Rをルート権限無しでCentOS7にインストールする
前置き
ルート権限無しで、と書いたが、devtoolset-8は管理者によってインストールされている必要がある。これによりGCCの新しめのバージョンを使えるようになる。逆に、これが無いと最近のオープンソースソフトウェアのソースコードの大体がまともにコンパイルできない。 www.softwarecollections.org 管理者に
# 1. Install a package with repository for your system: # On CentOS, install package centos-release-scl available in CentOS repository: $ sudo yum install centos-release-scl # On RHEL, enable RHSCL repository for you system: $ sudo yum-config-manager --enable rhel-server-rhscl-7-rpms # 2. Install the collection: $ sudo yum install devtoolset-8
を実行してもらえばよい。
本題
最初に/home/$USER/local
にPATHを通しておく。.bashrc
なんかに
export LD_LIBRARY_PATH="/home/$USER/local/lib64:/home/$USER/local/lib:$LD_LIBRARY_PATH" export LDFLAGS="-L/home/$USER/local/lib64 -L/home/$USER/local/lib $LDFLAGS" export CPPFLAGS="-I/home/$USER/local/include $CPPFLAGS"
と書き込んだ後、$ exec bash
などすればよい。
次に、以下のシェルスクリプトを実行するか、一行ずつターミナルに打ち込んでいって、必要なパッケージを順にビルドしていけばよい。
source scl_source enable devtoolset-8 mkdir -p /home/$USER/local cd /home/$USER/local # zlib install mkdir -p zlib cd zlib wget https://sourceforge.net/projects/libpng/files/zlib/1.2.11/zlib-1.2.11.tar.gz tar xzvf zlib-1.2.11.tar.gz cd zlib-1.2.11 ./configure --prefix=/home/$USER/local make -j20 make install cd ../../ # bzip2 install mkdir -p bzip2 cd bzip2 wget https://www.sourceware.org/pub/bzip2/bzip2-latest.tar.gz tar xzvf bzip2-latest.tar.gz cd bzip2-1.0.8 make install PREFIX=/home/$USER/local cd ../../ # xz install mkdir -p xz cd xz wget https://tukaani.org/xz/xz-5.2.4.tar.gz tar xzvf xz-5.2.4.tar.gz cd xz-5.2.4 ./configure --prefix=/home/$USER/local make -j20 make install cd ../../ # pcre install mkdir -p pcre cd pcre wget https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz tar xzvf pcre-8.44.tar.gz cd pcre-8.44 ./configure --prefix=/home/$USER/local --enable-utf8 make -j20 make install cd ../../ # curl install mkdir -p curl cd curl wget https://curl.haxx.se/download/curl-7.68.0.tar.gz tar xzvf curl-7.68.0.tar.gz cd curl-7.68.0 ./configure --prefix=/home/$USER/local make -j20 make install cd ../../ # R install mkdir -p R cd R wget https://cran.ism.ac.jp/src/base/R-3/R-3.6.2.tar.gz tar xzvf R-3.6.2.tar.gz cd R-3.6.2 ./configure --prefix=/home/$USER/local make -j20 make install cd ../../