Jak mogę zainstalować nową wersję R we własnym katalogu, np /local/data/project/behi
.
software-installation
not-root-user
użytkownik3925736
źródło
źródło
Odpowiedzi:
Najłatwiej to zrobić, instalując R ze źródła :
Krok od ostatniego do ostatniego jest kluczowy. Konfiguruje R do zainstalowania w podkatalogu własnego katalogu domowego.
Aby uruchomić go w systemie Linux, macOS i podobnych systemach, dodaj
$HOME/R/bin
do swojegoPATH
. Następnie polecenia powłoki takie jakR
iRscript
będą działać.W systemie macOS istnieje inna alternatywa: skompiluj
R.app
i zainstaluj go w prywatnymApplications
folderze użytkownika. Aby to zrobić, musisz mieć zainstalowany Xcode.Zamiast tego możesz rozważyć podanie
--prefix=$HOME
. To instaluje R na najwyższym poziomie twojego katalogu domowego, tak żeR
iRscript
binaria kończą się w$HOME/bin
, co prawdopodobnie jest już w twoim użytkownikuPATH
. Minusem jest to, że utrudnia to późniejszą dezinstalację, ponieważ R byłby mieszany z innymi$HOME
treściami.(Jeśli jest to pierwsza rzecz, którą zainstalowałeś
$HOME/bin
, być może będziesz musiał się wylogować i zalogować ponownie, aby uzyskać to w sobiePATH
, ponieważ często jest to dodawane warunkowo tylko wtedy$HOME/bin
, gdy istnieje podczas logowania).Ten ogólny wzorzec dotyczy dużej ilości oprogramowania uniksowego, które można zainstalować z kodu źródłowego. Jeśli oprogramowanie ma
configure
skrypt, prawdopodobnie rozumie tę--prefix
opcję, a jeśli nie, zwykle istnieje alternatywa z tym samym efektem.Funkcje te są wspólne z wielu powodów. Według malejącego prawdopodobieństwa według mojego doświadczenia:
Bezpieczna wartość domyślna (
/usr/local
) nie jest właściwa$prefix
we wszystkich sytuacjach. Okoliczności mogą dyktować coś innego, takie jak/usr
,/opt/$PKGNAME
itpSystemy do budowania pakietów binarnych ( RPM , DEB , PKG , Cygport ...) zazwyczaj budują i instalują pakiet w specjalnym katalogu pomostowym, a następnie pakują go w taki sposób, aby rozwijał się w pożądanym miejscu instalacji.
Twój przypadek, w którym nie możesz
root
zainstalować oprogramowania w typowej lokalizacji, więc instalujesz w nim$HOME
.źródło
./configure --prefix=$HOME/R --enable-R-shlib
upewnić się, że skompilowałeś bibliotekę współdzieloną R. W przeciwnym razie RStudio będzie narzekać.configure: error: --with-readline=yes (default) and headers/libs are not available make: *** No targets specified and no makefile found. Stop.
Możesz także użyć aplikacji opakowania Renv .
fragment
źródło
Kompiluj ze źródła za pomocą
./configure --prefix=/local/data/project/behi ; make ; make install
Jeśli instalujesz z pakietu RPM i został on utworzony relokowalny, możesz użyć
Ale nie wszystkie pakiety są zbudowane z relokowalnymi plikami binarnymi i nie sądzę, że pakiety debian mają tę opcję (chociaż może się to powieść
dpkg --instdir
).źródło