繁体   English   中英

错误:安装 R 依赖包时找不到 gdal-config 而安装了 gdal

[英]Error: gdal-config not found while installing R dependent packages whereas gdal is installed

请指出我遗漏的一点:

openSUSE 11.3


xx@linux-y3pi:~/Desktop/R> sudo R CMD INSTALL rgdal_0.7-12.tar.gz 
root's password:
* installing to library ‘/usr/lib64/R/library’
* installing *source* package ‘rgdal’ ...
** package ‘rgdal’ successfully unpacked and MD5 sums checked
configure: gdal-config: gdal-config
checking gdal-config usability... ./configure: line 1353: gdal-config: command not found
no
Error: gdal-config not found
The gdal-config script distributed with GDAL could not be found.
If you have not installed the GDAL libraries, you can
download the source from  http://www.gdal.org/
If you have installed the GDAL libraries, then make sure that
gdal-config is in your path. Try typing gdal-config at a
shell prompt and see if it runs. If not, use:
 --configure-args='--with-gdal-config=/usr/local/bin/gdal-config'
with appropriate values for your installation.

ERROR: configuration failed for package ‘rgdal’
* removing ‘/usr/lib64/R/library/rgdal’

xx@linux-y3pi:~/Desktop/R> whereis gdal-config
gdal-config: /usr/local/bin/gdal-config

xx@linux-y3pi:~/Desktop/R> gdal-config 
Usage: gdal-config [OPTIONS]
Options:
 [--prefix[=DIR]]
 [--libs]
 [--dep-libs]
 [--cflags]
 [--datadir]
 [--version]
 [--ogr-enabled]
 [--formats]
 xx@linux-y3pi:~/Desktop/R>

> sessionInfo()
R version 2.15.1 (2012-06-22)
Platform: x86_64-unknown-linux-gnu (64-bit)

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=C                 LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     
> 

xx@linux-y3pi:~/Desktop/R> gdal-config --version
1.9.0

xx@linux-y3pi:~/Desktop/R> proj
Rel. 4.8.0, 6 March 2012
usage: proj [ -beEfiIlormsStTvVwW [args] ] [ +opts[=arg] ] [ files ]

linux-y3pi:~ # $PATH
bash: /home/xx/qtsdk-2010.05/qt/bin/:/home/xx/qtsdk-2010.05/bin:/home/xx/qtsdk-2010.05/qt/bin:/home/xx/qtsdk-2010.05/qt/bin/:/home/xx/qtsdk-2010.05/bin:/usr/lib64/mpi/gcc/openmpi/bin:/home/xx/bin:/usr/local/bin:/usr/bin:/sbin:/usr/sbin:/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/games: No such file or directory

在 Ubuntu 18.04 中

我通过sudo apt install libgdal-dev修复了这个问题希望有人觉得这有帮助。 上面的一些答案似乎已经过时且冗长。

在早期版本中(有 apt-get)

sudo apt-get install libgdal-dev

除了用于部署的普通包之外,您还需要带有头文件和共享库链接的-dev包用于开发 就发行版而言,有两种不同的用例。

在我的发行版中:

edd@max:/tmp$ dpkg -l | grep gdal | cut -c-72
ii  libgdal1-1.7.0                                1.7.3-6ubuntu3        
ii  libgdal1-dev                                  1.7.3-6ubuntu3        
edd@max:/tmp$ 

R CMD INSTALL rgdal_0.7-8.tar.gz工作得很好,就像你对 CRAN 包所期望的那样,考虑到 CRAN 的所有构建时检查。

2016 年末更新:正如@JoshO'Brien 在评论中指出的那样

小更新:在 2016 年,运行 Ubuntu 14.04.2, libgdal1h似乎已经取代了libgdal1 (尽管仍然需要libgdal1-dev )。 至少当我尝试apt-get install libgdal1时,我得到了一个错误

对于 Ubuntu 16.04,相应的行是
sudo apt-get install libgdal1i

上游库的这种重命名很常见; 诸如apt-cache search libgdal可以帮助定位当前的包名称。 不过,重要的关键是“抽象”开发包libgdal-dev是构建所需的全部,因为它通过依赖项拉入“具体”当前运行时包(此处: libgdal1i )。

您可以使用apt-file包来查找包含您要查找的丢失文件的包。

首先使用命令安装的apt-文件apt-get install apt-file
使用命令升级apt-文件apt-file update
现在您可以使用apt-file来查找丢失的文件。 apt-file search gdal-config

就我而言,从 svn 配置grass-7.1 时我遇到了同样的错误。 如下所示:

    $ ./configure
    ...more...
    checking whether to use GDAL... yes
    checking for gdal-config... /usr/bin/gdal-config
                  ...more....
    ./configure: 1: ./configure: /usr/bin/gdal-config: not found
    ./configure: 6093: test: =: unexpected operator
    configure: error: *** Unable to locate GDAL library.

但是,在使用apt-file查找gdal-config文件后,如下所示,在安装软件包libgdal1-dev后,我能够解决该错误

$ apt-file search gdal-config

结果

libgdal1-dev: /usr/bin/gdal-config

所以我安装了libgdal1-dev ,如下图:

$ sudo apt-get install libgdal1-dev

发生这种情况是因为包“rgdal”的配置失败,因此我们必须安装必要的依赖项。

需要软件包 libgdal-dev 和 libproj-dev:

sudo apt-get install gdal-bin proj-bin libgdal-dev libproj-dev

然后通过安装 rgdal

install.packages("rgdal")

加载 rgdal

library(rgdal)

macOS 上

brew install gdal

删除了错误

找不到 gdal-config

在 CentOS 6 上试试这个

sudo yum install gdal gdal-python gdal-devel mapserver mapserver-python libxml2 libxml2-python python-lxml python-pip python-devel gcc

阅读参考手册。

从源代码构建的系统要求:来自http://trac.osgeo.org/gdal/wiki/DownloadSource 的GDAL >= 1.6.0 库和来自http://trac.osgeo 的PROJ.4 (proj >= 4.4.9) 。组织/项目/

今天我在 Linux CentOS 6.10 上发生了同样的问题,我没有管理权限。

我做了什么:

a) 创建专用于我的 R 版本的 conda 环境

conda create --name MYR

b) 激活环境

source activate MYR

c) 安装 R

conda install -c conda-forge r-base

d) 安装 libgdal

conda install -c conda-forge libgdal

这为我解决了问题。 我的 R 版本是 4.1.3。 我想其他版本应该可以。

对于 manjora 或 archlinux,只需尝试: yay -S gdal

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM