R'nin yeni bir versiyonunu kendi dizinime nasıl kurabilirim, örneğin /local/data/project/behi
.
R'nin yeni bir versiyonunu kendi dizinime nasıl kurabilirim, örneğin /local/data/project/behi
.
Yanıtlar:
Bunu yapmanın en kolay yolu, R'yi kaynaktan yüklemektir :
$ 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
İkinci-son adım kritik olanıdır. R'yi kendi ana dizininizin bir alt dizinine kurulacak şekilde yapılandırır.
Linux, MacOS ve benzeri sistemlerinde çalıştırmak için, eklemek $HOME/R/bin
adresinden Müşteri PATH
. Ardından, kabuk komutları gibi çalışır R
ve Rscript
çalışacaktır.
MacOS'ta başka bir alternatifiniz var: bunu oluşturunR.app
ve kullanıcının özel Applications
klasörüne yükleyin . Bunu yapmak için Xcode yüklü olması gerekir.
Bunun --prefix=$HOME
yerine vermeyi düşünebilirsiniz . Yani yüklemeler böylece, ev dizinin en üst düzeyde R R
ve Rscript
içinde ikili sonunda $HOME/bin
kullanıcı en zaten büyük olasılıkla olan PATH
. Dezavantajı, R'nin diğer $HOME
içerikler arasında iç içe geçeceği için daha sonra kaldırmayı zorlaştırmasıdır .
(Yüklemiş olduğunuz ilk şey buysa $HOME/bin
, bunu almak için oturumu kapatıp tekrar girmeniz gerekebilir PATH
, çünkü genellikle yalnızca $HOME/bin
oturum açma zamanında varsa, koşullu olarak eklenir .)
Bu genel kalıp, kaynak koddan yükleyebileceğiniz çok sayıda Unix yazılımı için geçerlidir. Yazılımın bir configure
komut dosyası varsa, muhtemelen --prefix
seçeneği anlar ve eğer değilse, genellikle aynı etkiye sahip bazı alternatifler vardır.
Bu özellikler çeşitli nedenlerle yaygındır. Olasılık sırasını azaltarak, benim tecrübelerime göre:
Güvenli varsayılan ( /usr/local
) $prefix
her durumda doğru değildir . Koşullar başka bir şey dikte olabilir gibi /usr
, /opt/$PKGNAME
vb
İkili paket oluşturma sistemleri ( RPM , DEB , PKG , Cygport ...) tipik olarak paketi özel bir hazırlama dizinine kurar ve kurar , daha sonra bunları istenen yükleme yerine genişleyecek şekilde paketleyin.
Eğer alamayan Vakanız, root
içine yüklemek böylece, tipik bir konuma yazılım yüklemeye $HOME
yerine.
./configure --prefix=$HOME/R --enable-R-shlib
R paylaşılan kütüphanesini derlediğinizden emin olmanızı tavsiye ederim . Aksi takdirde, RStudio şikayet edecektir.
configure: error: --with-readline=yes (default) and headers/libs are not available make: *** No targets specified and no makefile found. Stop.
Sarmalayıcı uygulaması Renv de kullanabilirsiniz .
alıntı
Basit R Sürüm Yönetimi: Renv
Renv, R'nin birden fazla sürümü arasında kolayca geçiş yapmanıza olanak tanır. Basit, göze çarpmayan ve UNIX'in tek bir amaç için kullanılan tek bir takım geleneğini iyi bir şekilde takip eder.
Renv yapar…
- Global R sürümünü kullanıcı bazında değiştirmenize izin verin.
- Proje başına R sürümleri için destek sağlayın.
- Bir ortam değişkenine sahip R sürümünü geçersiz kılmanıza izin verir.
İle kaynaktan oluştur ./configure --prefix=/local/data/project/behi ; make ; make install
Bir RPM paketinden yüklüyorsanız ve taşınabilir bir ortam oluşturulduysa, kullanabilirsiniz
rpm ... --prefix /local/data/project/behi
Ancak tüm paketler yeniden yerleştirilebilir ikili dosyalar ile oluşturulmamıştır ve debian paketlerinin bu seçeneğe sahip olduğunu sanmıyorum (başarabilmenize rağmen dpkg --instdir
).