Rの新しいバージョンを自分のディレクトリ(/local/data/project/behi
など)にインストールするにはどうすればよいですか。
これを行う最も簡単な方法は、Rをインストールすることです ソースから :
$ wget http://cran.rstudio.com/src/base/R-3/R-3.4.1.tar.gz
$ tar xvf R-3.4.1.tar.gz
$ cd R-3.4.1
$ ./configure --prefix=$HOME/R
$ make && make install
最後から2番目のステップが重要です。 Rが自分のホームディレクトリのサブディレクトリにインストールされるように設定します。
Linux、macOS、および類似のシステムで実行するには、$HOME/R/bin
をPATH
に追加します。次に、R
やRscript
などのシェルコマンドが機能します。
MacOSでは、別の方法があります: build R.app
で、ユーザーのプライベートApplications
フォルダーにインストールします。これを行うには、Xcodeをインストールする必要があります。
代わりに--prefix=$HOME
を指定することを検討してください。これにより、Rがホームディレクトリの最上位にインストールされるため、R
およびRscript
バイナリは最終的に$HOME/bin
になり、これはおそらくユーザーのPATH
にすでに含まれています。欠点は、Rが他の$HOME
コンテンツに混在するため、後のアンインストールが難しくなることです。
(これが$HOME/bin
に最初にインストールしたものである場合、$HOME/bin
がログイン時に存在する場合にのみ条件付きで追加されることが多いため、PATH
でこれを取得するには、ログアウトして再度ログインする必要がある場合があります。)
この一般的なパターンは、ソースコードからインストールできる大量のUnixソフトウェアに適用されます。ソフトウェアにconfigure
スクリプトがある場合、それはおそらく--prefix
オプションを理解し、そうでない場合は、通常、同じ効果を持ついくつかの代替手段があります。
これらの機能は、いくつかの理由で一般的です。可能性の高い順に、私の経験では:
安全なデフォルト(/usr/local
)は、すべての状況で正しい$prefix
とは限りません。状況によっては、/usr
、/opt/$PKGNAME
などの他の何かが指示される場合があります。
バイナリパッケージビルドシステム( [〜#〜] rpm [〜#〜] 、 [〜#〜] deb [〜#〜] 、 [〜# 〜] pkg [〜#〜] 、 Cygport ...)通常、パッケージをビルドして特別なステージングディレクトリにインストールし、目的の場所に展開するようにパッケージ化します。インストール場所。
あなたのケースでは、root
を取得してソフトウェアを通常の場所にインストールできないため、代わりに$HOME
にインストールします。
ラッパーアプリケーション Renv を使用することもできます。
抜粋
シンプルなRバージョン管理:Renv
Renvを使用すると、Rの複数のバージョンを簡単に切り替えることができます。Renvはシンプルで目立たず、UNIXの伝統的な1つの目的を果たす単一目的のツールに従っています。
Renvは…
- ユーザーごとにグローバルRバージョンを変更できます。
- プロジェクトごとのRバージョンのサポートを提供します。
- Rバージョンを環境変数で上書きできるようにします。
ソースから./configure --prefix=/local/data/project/behi ; make ; make install
でビルド
RPMパッケージからインストールしていて、再配置可能に作成されている場合は、
rpm ... --prefix /local/data/project/behi
しかし、すべてのパッケージが再配置可能なバイナリでビルドされるわけではありません。私は、debianパッケージにこのオプションがあるとは思いません(ただし、dpkg --instdir
で成功する可能性はあります)。