Làm cách nào tôi có thể cài đặt phiên bản R mới trong thư mục của riêng tôi, vd /local/data/project/behi
.
Làm cách nào tôi có thể cài đặt phiên bản R mới trong thư mục của riêng tôi, vd /local/data/project/behi
.
Câu trả lời:
Cách dễ nhất để làm điều này là cài đặt R từ nguồn :
$ 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
Bước thứ hai đến bước cuối cùng là bước quan trọng. Nó cấu hình R để được cài đặt vào thư mục con của thư mục chính của bạn.
Để chạy nó trên Linux, macOS và các hệ thống tương tự, hãy thêm $HOME/R/bin
vào của bạn PATH
. Sau đó, các lệnh shell thích R
và Rscript
sẽ hoạt động.
Trên macOS, bạn có một cách khác: xây dựngR.app
và cài đặt nó vào Applications
thư mục riêng của người dùng . Bạn cần cài đặt Xcode để làm điều này.
Bạn có thể xem xét cho --prefix=$HOME
thay thế. Điều đó cài đặt R ở cấp cao nhất của thư mục chính của bạn, để các nhị phân R
và Rscript
cuối cùng xuất hiện $HOME/bin
, có khả năng đã có trong người dùng của bạn PATH
. Nhược điểm là nó làm cho việc gỡ cài đặt sau này khó khăn hơn, vì R sẽ được xen kẽ giữa các $HOME
nội dung khác của bạn .
(Nếu đây là thứ đầu tiên bạn cài đặt $HOME/bin
, bạn có thể phải đăng xuất và đăng nhập lại để lấy cái này PATH
, vì nó thường được thêm một cách có điều kiện chỉ khi $HOME/bin
tồn tại vào thời điểm đăng nhập.)
Mẫu chung này áp dụng cho một lượng lớn phần mềm Unix mà bạn có thể cài đặt từ mã nguồn. Nếu phần mềm có một configure
tập lệnh, nó có thể hiểu --prefix
tùy chọn, và nếu không, thường có một số thay thế với hiệu ứng tương tự.
Những tính năng này là phổ biến vì một số lý do. Theo thứ tự giảm dần, theo kinh nghiệm của tôi:
Mặc định an toàn ( /usr/local
) không phải là quyền $prefix
trong mọi tình huống. Hoàn cảnh có thể ra lệnh cái gì khác như /usr
, /opt/$PKGNAME
vv
Các hệ thống xây dựng gói nhị phân ( RPM , DEB , PKG , Cygport ...) thường xây dựng và cài đặt gói vào một thư mục dàn đặc biệt, sau đó đóng gói theo cách mà nó mở rộng vào vị trí cài đặt mong muốn.
Trường hợp của bạn, nơi bạn không thể root
cài đặt phần mềm vào một vị trí thông thường, vì vậy bạn sẽ cài đặt vào $HOME
.
./configure --prefix=$HOME/R --enable-R-shlib
để đảm bảo bạn biên dịch thư viện chia sẻ R. Nếu không, RStudio sẽ phàn nàn.
configure: error: --with-readline=yes (default) and headers/libs are not available make: *** No targets specified and no makefile found. Stop.
Bạn cũng có thể sử dụng ứng dụng trình bao bọc Renv .
đoạn trích
Quản lý phiên bản R đơn giản: Renv
Renv cho phép bạn dễ dàng chuyển đổi giữa nhiều phiên bản của R. Nó đơn giản, không phô trương và tuân theo truyền thống UNIX của các công cụ đơn mục đích làm tốt một việc.
Renv nào
- Cho phép bạn thay đổi phiên bản R toàn cầu trên cơ sở mỗi người dùng.
- Cung cấp hỗ trợ cho các phiên bản R cho mỗi dự án.
- Cho phép bạn ghi đè phiên bản R bằng biến môi trường.
Xây dựng từ nguồn với ./configure --prefix=/local/data/project/behi ; make ; make install
Nếu bạn đang cài đặt từ gói RPM và nó được tạo có thể di chuyển, bạn có thể sử dụng
rpm ... --prefix /local/data/project/behi
Nhưng không phải tất cả các gói đều được xây dựng với các nhị phân có thể định vị lại và tôi không nghĩ các gói debian có tùy chọn này (mặc dù bạn có thể thành công với dpkg --instdir
).