2017-07-07 42 views
5

我無法在R上安裝軟件包「sf」。似乎gdal存在問題。不知道如何解決它。由於「gdal」導致安裝「sf」時遇到問題

> install.packages("sf") 

    There is a binary version available but the source version is later: 
    binary source needs_compilation 
sf 0.4-3 0.5-1    TRUE 

Do you want to install from sources the package which needs compilation? 
y/n: y 
installing the source package ‘sf’ 

trying URL 'https://cran.rstudio.com/src/contrib/sf_0.5-1.tar.gz' 
Content type 'application/x-gzip' length 4073881 bytes (3.9 MB) 
================================================== 
downloaded 3.9 MB 

* installing *source* package ‘sf’ ... 
** package ‘sf’ successfully unpacked and MD5 sums checked 
configure: CC: clang 
configure: CXX: clang++ 
checking for gdal-config... no 
no 
configure: error: gdal-config not found or not executable. 
ERROR: configuration failed for package ‘sf’ 
* removing ‘/Library/Frameworks/R.framework/Versions/3.4/Resources/library/sf’ 
Warning in install.packages : 
    installation of package ‘sf’ had non-zero exit status 

The downloaded source packages are in 
    ‘/private/var/folders/1m/w_zt5ygd26n_87h41qf574wc0000gn/T/RtmpNlYbwT/downloaded_packages’ 

爲什麼說下載失敗,然後說源碼包已下載。是什麼賦予了?

+0

首先,它不會說_download_失敗,而是安裝。另外,GDAL是一個C++庫,用於地理空間矢量操作,併爲R提供了一組綁定。看起來您需要使用您的軟件包管理器來安裝GDAL,然後是R的綁定,然後是這個'sf'軟件包。 –

+0

你在Windows上嗎?我會嘗試安裝二進制文件,因爲我相信這會爲您提供gdal。 – jsta

+0

不,在Mac上。無法通過brew安裝gdal。不知道如何解決問題。 – invictus

回答

7

面臨着類似的問題,我都遵循以下步驟:

  1. 終端gdalinfo --version檢查你有哪些@中的版本。我的是GDAL 2.2.0,2017年4月28日發佈brew updatebrew upgrade
  2. 從這裏:https://github.com/r-spatial/sf,適用於MacOS的指令,因爲我已經安裝了GDAL,我只用brew unlink gdal然後brew link --force gdal2
  3. 我重新安裝rgdal對R:install.packages("rgdal", repos = "http://cran.us.r-project.org", type = "source"),我已經證實,它與配置編譯:GDAL:2.2.0
  4. 最後,install.packages("sf"),它需要被編譯:二進制源needs_compilation SF 0.5-3 TRUE
  5. 再次,我已經證實配置:GDAL:2.2.0檢查GDAL版本> = 2.0.0 ...是

在那之後,我安裝了新版本: 庫(SF) 鏈接到GEOS 3.6.2,2.2.0 GDAL,PROJ.4 4.9.3

我希望這可能是一個解決方案,你太。