【问题标题】:proj_api.h not found in standard or given locations在标准或给定位置找不到 proj_api.h
【发布时间】:2019-08-10 07:41:44
【问题描述】:

我正在尝试在 CentOS 机器上安装 sf 软件包,但我不断收到此错误

proj_api.h not found in standard or given locations

即使当我运行 locate proj_api.h 时,它也可以在 /usr/local/include/proj_api.h 中找到

【问题讨论】:

  • 您能否提供所有相关内容的版本以及安装输出的副本?
  • 你应该提供你用来配置的命令。我猜这是一个 Autotools 项目。设置PKG_CONFIG_PATH=/usr/local/lib/pkgconfig,然后运行./configure。或者,如果您正在编译和链接,则显示您的编译和链接命令。在这种情况下,将-I/usr/local/include 添加到您的CFLAGS,并将-L/usr/local/lib 添加到您的LDFLAGS。可能相关,见rgdal package installation
  • 你试过直接从github安装sf吗?

标签: r linux centos sf proj


【解决方案1】:

从命令行试试这个。当我在 Mac Mojave 上收到相同的错误消息时,它对我有用:

R CMD INSTALL sf_0.7-4.tar.gz --configure-args='-with-gdal-config=/Library/Frameworks/GDAL.framework/Versions/2.4/unix/bin/gdal-config -with-geos-config=/Library/Frameworks/GEOS.framework/Versions/3B/unix/bin/geos-config --with-proj-include=/Library/Frameworks/PROJ.framework/unix/include --with-proj-lib=/Library/Frameworks/PROJ.framework/unix/lib'

您需要确认 PROJ 的 gdal-config、geos-config、include 和 lib 的位置。以及每次安装和 .tar.gz 文件的最新版本。我发现了一个类似的问题和答案here

【讨论】:

    【解决方案2】:

    当我设置 PKG_CONFIG_PATH 环境时,我的案例帮助,并将它们指向“proj.pc”文件的位置:

    export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
    

    【讨论】:

    • 如何在安装程序参数 --with-proj-lib=/usr/local/lib/pkgconfig/proj.pc 中指向“proj.pc”的位置?
    • 就像我上面提到的,您必须在系统中设置环境变量:PKG_CONFIG_PATH 和 proj.pc 的路径,而不是在安装程序参数中。
    • 我确实在我的环境中设置了 PKG_CONFIG_PATH,但不确定您的第二步,“将它们指向“proj.pc”文件的位置。”
    【解决方案3】:

    最近sf 的配置相对于proj 发生了很大变化。从 github 安装开发版本解决了我的配置失败

    remotes::install_github('r-spatial/sf')
    

    【讨论】:

    • 在 macoS Catalina, R 3.6.2 上仍然出现此错误,即使在尝试 sf 的开发版本(与 CRAN 版本相同)时也是如此。重新安装proj和所有依赖项无济于事```检查proj.h可用性...是检查proj.h存在...是检查proj.h...是检查PROJ:检查PROJ和sqlite3是否可用于链接:...没有配置:错误:在标准或给定位置找不到libproj。 ```
    猜你喜欢
    • 2020-07-27
    • 2021-04-06
    • 2021-05-20
    • 2019-10-11
    • 1970-01-01
    • 2019-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多