r语言 - 无法安装"proj4"软件包,因为在标准搜索位置找不到 libproj 和/或 proj_api.h



我想安装需要安装proj4软件包的ggalt软件包,但是当我安装proj4时,它会引发错误libproj and/or proj_api.h not found in standard search locations

我的计算机是Mac,我使用brew install proj安装了PROJ.4,R的版本为3.6.0_2。我在Internet上搜索了此问题,但没有找到解决问题的方法。我不是编码器,只是开始学习R,所以我不知道该怎么做。

错误显示如下:

* installing *source* package ‘proj4’ ...
** package ‘proj4’ successfully unpacked and MD5 sums checked
** using staged installation
checking for gcc... clang
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether clang accepts -g... yes
checking for clang option to accept ISO C89... none needed
checking how to run the C preprocessor... clang -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... rm: conftest.dSYM: is a directory
rm: conftest.dSYM: is a directory
yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking proj_api.h usability... no
checking proj_api.h presence... no
checking for proj_api.h... no
checking for pj_init_plus in -lproj... yes
configure: error: libproj and/or proj_api.h not found in standard search locations.
*** Install PROJ.4 and if necessary set PKG_CPPFLAGS/PKG_LIBS accordingly.
ERROR: configuration failed for package ‘proj4’
* removing ‘/usr/local/lib/R/3.6/site-library/proj4’
The downloaded source packages are in
    ‘/private/var/folders/sn/1d6n55qs0zl522kcc769jq5h0000gn/T/RtmpNOkU64/downloaded_packages’

我正在运行pop!_OS 20.04(ubuntu fork(,并遇到proj4未安装的同一问题(r 3.6.3(。我不认为libproj尚未安装。我能够使用此命令通过终端手动执行此操作:

sudo apt-get install libproj-dev

我重新启动R,并且能够安装proj4

我也遇到了这个烦人的问题。我能够手动构建它 - 但是目前这是一个肮脏的骇客。请注意,我不是C程序员,因此不会修复。

我在proj_api.h的顶部找到:

#ifndef ACCEPT_USE_OF_DEPRECATED_PROJ_API_H
#error 'To use the proj_api.h you must define the macro ACCEPT_USE_OF_DEPRECATED_PROJ_API_H'
#endif

我认为我可以插入

#define ACCEPT_USE_OF_DEPRECATED_PROJ_API_H

src/p4.c中的第7行和包源的configure的第1462行(在两种情况下,在#include之前(。

我想一个人也可以从 proj_api.h中删除该部分 - 但是,如果它可能会破坏任何东西,我没有丝毫线索。

最新更新