linux下安裝R(非root權限)

在使用R時,很多人都是在登陸節點上裝R包,但R很占內存,直接在登陸節點跑復雜程序,管理員該找你喝茶了。但是投遞到計算節點又跑不了,真是頭大。原因是計算節點的R又沒裝你要用的R包。有人會說,那在每個計算節點上裝一遍不就行了,計算節點如果有20個,一個一個裝不是啥大事,可又不止這一個包,來10個20個包,誰受得了。【所以要自己把R裝在一個登陸節點和計算節點都可以訪問到的地方,這樣就可以了。大多數人都沒有root權限,怎么裝,看下面。】

R官網下載R,放在你能找到的地方。我下載的是R-3.5.3

第一步:tar -xzf ?R-3.5.3.tar.gz #解壓

? ? ? ? ? ? ? ? cd?R-3.5.3 #打開

? ? ? ? ? ? ? ? ./configure --prefix=/home/bin/R ?#我是放在我的home/bin路徑下的,這個可以自己放在喜歡的位置

第二步:一般?./configure都會報錯,此步主要是把這些錯誤都解決了

【報錯1】configure: error: zlib library and headers are required

解決:自己百度下載zlib

? ? ? ? tar -xzf?zlib-1.2.11.tar.gz ?#可能會有最新版

? ? ? ? cd?zlib-1.2.11

? ??????./configure --prefix=/home/bin/zlib-1.2.11

? ? ? ? make

? ? ? ? make install

【繼續configure R】?./configure --prefix=/home/bin/R?--enable-R-shlib?LDFLAGS="-L/$HOME/Programme/zlib-1.2.11/lib" ?CPPFLAGS="-I/$HOME/Programme/zlib-1.2.11/include"

【報錯2】configure: error: bzip2 library and headers are required

解決:自己百度下載bzip2(官網下不下來,可能是自己chun,就在百度某頁面隨便下了一個)

? ??????tar -xzf?bzip2-1.0.6.tar.gz

????????cd?bzip2-1.0.6

????????make

? ? ? ? make install?PREFIX=/home/bin/bzip2-1.0.6

? ??????make -f Makefile-libbz2_so

最后這步會有問題,網上說這么解決,一開始沒解決,試了無數遍后奇跡般解決的。如果你們遇到也可以試試。多試幾遍。

第一:設置環境變量:

vi ? ?~/.bashrc #添加下面的代碼

export PATH=/home/bin/bzip2-1.0.6/bin:$PATH

export LD_LIBRARY_PATH=/home/bin/bzip2-1.0.6/lib:$LD_LIBRARY_PATH

export CFLAGS="-fPIC -I/home/bin/bzip2-1.0.6/include"

export LDFLAGS="-fPIC?-L/home/bin/bzip2-1.0.6/lib"

:wq

source ~/.bashrc

第二:指定-fPIC編譯:重新編譯步驟:

?cd bzip2-1.0.6

?make CC='gcc -fPIC'

?make install PREFIX=/home/bin/bzip2-1.0.6

make -f Makefile-libbz2_so?//建立共享library,不會報錯說明正確

【繼續configure R】?./configure --prefix=/home/bin/R?--enable-R-shlib?LDFLAGS="-L/home/bin/zlib-1.2.11/lib -L/home/bin/bzip2-1.0.6/lib" ?CPPFLAGS="-I/$HOME/Programme/zlib-1.2.11/include -I/home/bin/bzip2-1.0.6/include"

【報錯3】configure: error: "liblzma library and headers are required"

解決:自己百度下載?xz-5.2.4.tar.gz

? ? ? ? tar -xzf?xz-5.2.4.tar.gz

? ? ? ? cd?xz-5.2.4

? ??????./configure --prefix=/home/bin/xz-5.2.4

? ? ? ? make

? ? ? ? make install

【繼續configure R】?./configure --prefix=/home/bin/R?--enable-R-shlib?LDFLAGS="-L/home/bin/zlib-1.2.11/lib -L/home/bin/bzip2-1.0.6/lib -L/home/bin/xz-5.2.4/lib" ?CPPFLAGS="-I/$HOME/Programme/zlib-1.2.11/include -I/home/bin/bzip2-1.0.6/include -I/home/bin/xz-5.2.4/include"

【報錯4】configure: error: pcre >= 8.20 library and headers are required

解決:自己百度下載 pcre-8.43.tar.gz (千萬不要錯下載pcre2- 的版本)

????????tar -xzf?pcre-8.43.tar.gz

? ? ? ? cd?pcre-8.43

? ??????./configure --prefix=/home/bin/pcre-8.43

? ? ? ? make

? ? ? ? make install

【繼續configure R】?./configure --prefix=/home/bin/R?--enable-R-shlib?LDFLAGS="-L/home/bin/zlib-1.2.11/lib -L/home/bin/bzip2-1.0.6/lib -L/home/bin/xz-5.2.4/lib -L/home/bin/pcre-8.43/lib" ?CPPFLAGS="-I/$HOME/Programme/zlib-1.2.11/include -I/home/bin/bzip2-1.0.6/include -I/home/bin/xz-5.2.4/include -I/home/bin/pcre-8.43/include"

【報錯5】configure: error: libcurl >= 7.22.0 library and headers are required with support for https

解決:自己百度下載curl-7.64.0.tar.gz

??????tar -xzf?curl-7.64.0.tar.gz

? ? ? ?cd?curl-7.64.0

? ? ? ?./configure --prefix=/home/bin/curl-7.64.0

? ? ? ? make

? ? ? ? make install

【繼續configure R】?./configure --prefix=/home/bin/R?--enable-R-shlib?LDFLAGS="-L/home/bin/zlib-1.2.11/lib -L/home/bin/bzip2-1.0.6/lib -L/home/bin/xz-5.2.4/lib -L/home/bin/pcre-8.43/lib -L/home/bin/curl-7.64.0/lib" ?CPPFLAGS="-I/$HOME/Programme/zlib-1.2.11/include -I/home/bin/bzip2-1.0.6/include -I/home/bin/xz-5.2.4/include -I/home/bin/pcre-8.43/include -I/home/bin/curl-7.64.0/include"

這樣configure就不會有錯啦

第三步:make?

【如果沒有報錯】make install 就裝好了

【如果有報錯】?

報錯1:報錯內容包含libbz2.a,重復第二步的報錯2解決方案,直到沒有報錯才可以,要不然會一直報錯,無法make。

報錯2:報錯內容包含lzma、pcre,需要修改configue 內容,加-Wl,rpath

./configure --prefix=/home/bin/R?--enable-R-shlib?LDFLAGS="-L/home/bin/zlib-1.2.11/lib -L/home/bin/bzip2-1.0.6/lib -L/home/bin/xz-5.2.4/lib -L/home/bin/pcre-8.43/lib -L/home/bin/curl-7.64.0/lib -Wl,rpath=/home/bin/pcre-8.43/lib -Wl,rpath=/home/bin/xz-5.2.4/lib" ?CPPFLAGS="-I/$HOME/Programme/zlib-1.2.11/include -I/home/bin/bzip2-1.0.6/include -I/home/bin/xz-5.2.4/include -I/home/bin/pcre-8.43/include -I/home/bin/curl-7.64.0/include"

接著make, make install

第四步:待所有的安裝都成功后,把R 的路徑寫在bashrc里就可以了

參考鏈接:http://blog.sina.com.cn/s/blog_6aaea1760102x5ka.html

? ??????????????????http://www.lxweimin.com/p/edb234eed915

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。