2017-08-16 93 views
3

我正在運行Ubuntu 16.04 [現在17.04:請參閱下面以粗體顯示]和R 3.4.1。今天早上我安裝了後者,所以我認爲這是最新版本。我想安裝Tidyverse,我在Windows下花了很多快樂時光。但是當我做install.packages("tidyverse")時,我收到有關無法識別的gcc命令行選項的錯誤。這些在安裝命中colorspace和munsell軟件包時開始。我會在這篇文章的末尾展示一個例子,僅供參考。如何在Ubuntu 16.04和17.04上安裝Tidyverse

我還沒有發現任何人在Ubuntu 16.04上遇到過這個問題。但是,來自具有類似問題的人的帖子表明,我的gcc可能是一個太舊的版本,無法識別選項-fstack-protector-strong和-Wdate-time。我已經想到了

可能的變通:

1),希望這些人有一個合適的GCC更新的Ubuntu 16.10至17.04或。但是,我在這裏遇到了缺乏Ubuntu專業知識的情況:尤其是,我必須升級兩次,一次升至16.10,然後再升至17.04。我甚至無法將系統升級到16.10:在https://wiki.ubuntu.com/YakketyYak/ReleaseNotes「從Ubuntu 16.04 LTS升級」中推薦的步驟,在嘗試升級時找不到升級。另外,我不確定這兩個Ubuntus是否都有合適的gcc。

在第二天添加:雖然我試圖通過以下https://wiki.ubuntu.com/YakketyYak/ReleaseNotes升級Ubuntu,但是他們昨天沒有做任何事情,他們今天確實工作。也許是緩存問題?所以我現在有Ubuntu 17.04。但是,在嘗試安裝Tidyverse時,我仍然遇到同樣的錯誤。

2)找到不需要那些編譯器選項的舊版Tidyverse。

3)升級我的Ubuntu的gcc。但我不知道是否會在我的機器上燒燬其他軟件,而這些軟件需要較舊的gcc。

4)爲Tidyverse安裝一個新的gcc,並以某種方式使用路徑欺騙安裝程序調用它,也許通過遵循https://askubuntu.com/questions/466651/how-do-i-use-the-latest-gcc-on-ubuntu中的建議。但這聽起來很危險。

5)廢棄Ubuntu,並做所有我的工作在Windows上。我知道人們嘲笑「Micro $ oft」,但至少在Windows中,我不會浪費一個早上的Linux arcana,並且可以完成我的工作,這就是R.這種感覺太像太神奇了,他們的咒語在https://people.dsv.su.se/~jpalme/s1/hoare.pdf ,「軟件設計:一個寓言」。只是說...

任何人誰已經實際上已經與這些版本的R和Ubuntu做到這一點的建議?

這裏有一個安裝失敗:

 
`> install.packages("munsell") 
Installing package into ‘/home/popx/R/x86_64-pc-linux-gnu-library/3.4’ 
(as ‘lib’ is unspecified) 
also installing the dependency ‘colorspace’ 

trying URL 'https://cran.rstudio.com/src/contrib/colorspace_1.3-2.tar.gz' 
Content type 'application/x-gzip' length 293433 bytes (286 KB) 
================================================== 
downloaded 286 KB 

trying URL 'https://cran.rstudio.com/src/contrib/munsell_0.4.3.tar.gz' 
Content type 'application/x-gzip' length 97244 bytes (94 KB) 
================================================== 
downloaded 94 KB 

* installing *source* package ‘colorspace’ ... 
** package ‘colorspace’ successfully unpacked and MD5 sums checked 
** libs 
gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG  -fpic -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -c colorspace.c -o colorspace.o 
gcc: error: unrecognized command line option '-fstack-protector-strong' 
gcc: error: unrecognized command line option '-Wdate-time' 
/usr/lib/R/etc/Makeconf:159: recipe for target 'colorspace.o' failed 
make: *** [colorspace.o] Error 1 
ERROR: compilation failed for package ‘colorspace’ 
* removing ‘/home/popx/R/x86_64-pc-linux-gnu-library/3.4/colorspace’ 
Warning in install.packages : 
    installation of package ‘colorspace’ had non-zero exit status 
ERROR: dependency ‘colorspace’ is not available for package ‘munsell’ 
* removing ‘/home/popx/R/x86_64-pc-linux-gnu-library/3.4/munsell’ 
Warning in install.packages : 
    installation of package ‘munsell’ had non-zero exit status 

The downloaded source packages are in 
    ‘/tmp/RtmpQ8FW70/downloaded_packages’ 
Warning message: 
R graphics engine version 12 is not supported by this version of RStudio. The Plots tab will be disabled until a newer version of RStudio is installed. 

回答

1

在某些情況下,我發現我需要安裝Ubuntu的軟件包。要安裝tidyverse我添加命令和apt-get安裝R-CRAN捲曲上r-cran-OpenSSL的R-CRAN-XML2

安裝這些我可以安裝tidyverse後。

1

我相信有一個類似的問題,試圖安裝tidyverse軟件包。 對於Linux來說是一個相當新的東西,對於R來說是一個完整的新手,我遵循了CRAN Project's homepage上的Ubuntu安裝入門。當我安裝R,I故意跳過安裝的r基-dev軟件包的,因爲它表示,它的目的是爲「包維護者」。我真的不看後期或瞭解編譯軟件包自己的必要性。

無論如何,安裝r-base-dev包,並允許我安裝Tidyverse包沒有問題。完成它的工作的完整步驟應該如下所示。在終端執行以下步驟(1-3步可能會或可能不會是必要的,但我已經添加了他們以防萬一):

  1. /etc/apt/sources.list文件添加deb https://<my.favorite.cran.mirror>/bin/linux/ubuntu artful/,您最喜愛的實際URL替換CRAN鏡子。請參閱https://cran.r-project.org/mirrors.html以獲取CRAN鏡像列表。
  2. 添加存儲庫密鑰到系統:

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E084DAB9 
    

    的另一種方法可以通過檢索與

    gpg --keyserver keyserver.ubuntu.com --recv-key E084DAB9 
    

    ,然後將鍵它與

    gpg -a --export E084DAB9 | sudo apt-key add - 
    
    饋送到易於密鑰被用於
  3. 要安裝完整的R系統,請使用

    sudo apt-get update 
    sudo apt-get install r-base 
    
  4. 然後是一步,我錯過了,那證明關鍵是能夠編譯Tidyverse包內包,即安裝r-base-dev包:

    sudo apt-get install r-base-dev 
    
  5. 然後在RStudio執行包安裝命令:

    install.packages(tidyverse) 
    

希望這也會對你有用。有關安裝過程的更多信息,請閱讀CRAN項目主頁上的安裝指南。