错误:安装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
推荐答案
除了用于部署的常规软件包之外,您还需要用于开发的带有标头和共享库链接的-dev
软件包强>.就发行版而言,有两种不同的用例.
You need the -dev
package with headers and shared library links for development besides the normal package for deployment. Two different use cases as far as the distro is concerned.
在我的分布中:
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$
鉴于CRAN的所有构建时检查,
和R CMD INSTALL rgdal_0.7-8.tar.gz
的工作效果与您期望的CRAN包一样好.
and R CMD INSTALL rgdal_0.7-8.tar.gz
works just fine as you would expect from a CRAN package given all the build-time checks at CRAN.
2016年末更新:正如@ JoshO'Brien在评论中指出的那样
Update late 2016: As @JoshO'Brien points out in the comment
次要更新:在2016年运行Ubuntu 14.04.2的情况下,
libgdal1h
似乎可以 已替换libgdal1
(尽管仍需要libgdal1-dev
).至少 尝试apt-get install libgdal1
Minor update: Here in 2016, running Ubuntu 14.04.2,
libgdal1h
seems to have replacedlibgdal1
(thoughlibgdal1-dev
is still needed). At least I get an error to that effect when I attempted toapt-get install libgdal1
对于Ubuntu 16.04,对应的行是
sudo apt-get install libgdal1i
For Ubuntu 16.04 the corresponding line would be
sudo apt-get install libgdal1i
这种对上游库的重命名很常见; apt-cache search libgdal
之类的东西可以帮助找到当前的软件包名称. 重要关键在于,构建"abstract"开发包libgdal-dev
所需要的全部,因为它通过via提取了具体的"当前运行时包(此处为libgdal1i
).依赖项.
Such renaming of upstream libraries is common; something such as apt-cache search libgdal
can help locate the current package names. The important key though is that the "abstract" development package libgdal-dev
is all that is needed to build as it pulls the "concrete" current run-time package (here: libgdal1i
) in via a dependency.
这篇关于错误:安装R相关软件包时未找到gdal-config,但已安装gdal的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!