- 資訊首頁(yè) > 網(wǎng)絡(luò )安全 >
- centos6.5安裝R語(yǔ)言出現問(wèn)題怎么解決
這篇文章主要講解了“centos6.5安裝R語(yǔ)言出現問(wèn)題怎么解決”,文中的講解內容簡(jiǎn)單清晰,易于學(xué)習與理解,下面請大家跟著(zhù)小編的思路慢慢深入,一起來(lái)研究和學(xué)習“centos6.5安裝R語(yǔ)言出現問(wèn)題怎么解決”吧!
環(huán)境:虛擬機centos6.5 內核為2.6.32-696.1.1.el6.x86_64(這是更新后的內核版本,沒(méi)更新之前比這個(gè)版本低)、R-3.3.2
在網(wǎng)上大多攻略都是先下載R壓縮包,然后解壓,配置安裝,步驟如下:
(1)下載安裝包
wget https://cran.r-project.org/src/base/R-3/R-3.2.2.tar.gz
(2)解決依賴(lài)包
#yum install gcc-gfortran
#yum install gcc gcc-c++
#yum install readline-devel
#yum install libXt-devel
(3)解壓安裝
# tar xvf R-3.3.2.tar.gz
# cd R-3.3.2
# ./configure
# make
# make install
在進(jìn)行make時(shí),報錯make: *** No targets specified and no makefile found. Stop.
這就尷尬了,知道問(wèn)題來(lái)了,找度娘,找到一篇博文,說(shuō)兩個(gè)原因,一個(gè)是內核太舊,一個(gè)是依賴(lài)包沒(méi)裝全,就先更新個(gè)內核
yum update
更新到一半斷掉了,那么問(wèn)題又來(lái)了,重新啟動(dòng)時(shí)報錯vfs:unable to mount root fs on unknown-block(0,0)
又找度娘,發(fā)現是升級時(shí)沒(méi)更新完全,grub引導文件有問(wèn)題,就到/boot/grub/menu.lst查看,發(fā)現最新版本啟動(dòng)命令中缺少initrd,可是天生愚鈍,搞不清這個(gè)東西是怎么生成的,搞了好久也沒(méi)搞好,無(wú)奈,只能卸掉內核重新更新;
yum remove kernel 2.6.32-696.1.1.el6.x86_64
卸載完后,重新yum update,完美升級!刪除掉舊內核,升級算是解決了。
然后再解壓安裝,還是報錯,那就是依賴(lài)包沒(méi)裝完全,在執行./configure過(guò)程中其實(shí)就是在檢查依賴(lài)包,第一次安裝時(shí)沒(méi)太注意,后來(lái)發(fā)現這樣一段
checking for zlib.h... yes
checking if zlib version >= 1.2.5... no
checking whether zlib support suffices... configure: error: zlib library and hea ders are required
再查看內核的zlib
rpm -qa | gerp zlib
發(fā)現內核自帶zlib是1.2.3版本的,可見(jiàn)版本太低造成的,問(wèn)題確定了,接著(zhù)度娘,找到一篇博客https://www.hitoy.org/use-the-compiled-zlib-library-to-replace-the-system-integration-one.html
說(shuō)是要先升級zlib,我想這先卸載,再升級,可是系統不讓卸載,后來(lái)才發(fā)現zlib是內核中很重要的部分,依賴(lài)非常多,所以不能卸載;那就直接升級吧,yum install zlib,卻告訴我系統已經(jīng)安裝,無(wú)奈自己在網(wǎng)上下載個(gè),按照上面博客的說(shuō)法做下去,最后安裝時(shí)依舊是找不到zlib!
這個(gè)問(wèn)題糾結了我兩天,沒(méi)辦法換zlib版本,在網(wǎng)上重新下載了個(gè)zlib-1.2.5版的
./configure
make
make install
上述問(wèn)題看樣子是現有內核版本不支持最新版zlib,所以還是用個(gè)低版本的??!
再安裝R又報錯bzip2版本太低,要求要大于等于bzip2-1.0.6,內核自帶版本是bzip2-1.0.5,網(wǎng)上下載,安裝,接著(zhù)報錯
/usr/bin/ld: blocksort.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
blocksort.o: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [all] Error 1
無(wú)奈,接著(zhù)找度娘,需要修改Makefile-libbz2_so中的CC=gcc 為CC=gcc -fPIC,并且解壓文件中沒(méi)有configure,需要先執行 make -f Makefile-libbz2_so,然后在make install;
再次安裝R,問(wèn)題依舊,這就尷尬了,各種百度,都沒(méi)有解決,問(wèn)題只能是定位到系統內核本身了,就像第一次安裝zlib-1.2.11版本系統不識別一樣,看來(lái)是系統不兼容bzip2-1.0.6版本,所以這種自己動(dòng)手安裝的辦法不可行了,拋棄!
最后百度了一個(gè)只需要三個(gè)步驟的方法,大體是說(shuō),先更新系統內核,利用第三方yum源epel,其中包含了最新的各種軟件包,之后就像安裝軟件一樣利用yum安裝R,是成功的,步驟如下:
su -c "rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm"
yum update
yum install R
附圖如下:
下載yum源
更新yum源
安裝R過(guò)程
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自互聯(lián)網(wǎng)轉載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權請聯(lián)系QQ:712375056 進(jìn)行舉報,并提供相關(guān)證據,一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容。
Copyright ? 2009-2021 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 珠海市特網(wǎng)科技有限公司 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站