在非标准位置安装带有库的 sf 包

2024-03-01

所需的库位于非标准位置,我可以通过以下命令安装 rgdal:

install.packages('rgdal', type = "source", 
configure.args=c('--with-gdal-config=/home/programs/anaconda3/bin/gdal-config',
'--with-proj-include=/home/programs/anaconda3/include',
'--with-proj-lib=/home/programs/anaconda3/lib'))

但我无法安装sf包裹。它一直说configure: error: proj_api.h not found in standard or given locations.。安装代码和输出如下。你有什么提示吗?

install.packages('sf', type = "source", 
configure.args='--with-gdal-config=/home/programs/anaconda3/bin/gdal-config --with-geos-config=/home/programs/anaconda3/bin/geos-config --with-proj-include=/home/programs/anaconda3/include/ --with-proj-lib=/home/programs/anaconda3/lib/')
* installing *source* package ‘sf’ ...
** package ‘sf’ successfully unpacked and MD5 sums checked
configure: CC: gcc -m64 -std=gnu99
configure: CXX: g++ -m64 -std=gnu++11
configure: gdal-config set to /home/programs/anaconda3/bin/gdal-config
checking gdal-config exists... yes
checking gdal-config executable... yes
checking gdal-config usability... yes
configure: GDAL: 2.4.1
checking GDAL version >= 2.0.0... yes
checking for gcc... gcc -m64 -std=gnu99
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 gcc -m64 -std=gnu99 accepts -g... yes
checking for gcc -m64 -std=gnu99 option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -m64 -std=gnu99 -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... 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 gdal.h usability... yes
checking gdal.h presence... yes
checking for gdal.h... yes
checking GDAL: linking with --libs only... yes
checking GDAL: /home/programs/anaconda3/share/gdal/pcs.csv readable... yes
checking GDAL: checking whether PROJ is available for linking:... yes
checking GDAL: checking whether PROJ is available fur running:... yes
checking proj_api.h usability... no
checking proj_api.h presence... no
checking for proj_api.h... no
configure: error: proj_api.h not found in standard or given locations.
ERROR: configuration failed for package ‘sf’
* removing ‘/usr/lib64/R/library/sf’

R 设置信息:

platform       x86_64-redhat-linux-gnu
arch           x86_64
os             linux-gnu
system         x86_64, linux-gnu
status
major          3
minor          5.2
year           2018
month          12
day            20
svn rev        75870
language       R
version.string R version 3.5.2 (2018-12-20)
nickname       Eggshell Igloo

感谢所有评论的人;这个问题源于CentOS的sudo设置。操作系统设置为用户环境变量将不可用sudo环境,因此在用户中设置环境变量.bashrc文件无法解决问题。因此,要安装sf包,我得开始了R with sudo并在命令行中使用正确的环境变量,然后安装sf封装在R.

首先,使用所需的环境变量运行 R,

sudo PKG_CONFIG_PATH="/home/programs/anaconda3/lib/pkgconfig/" LD_LIBRARY_PATH="/home/programs/anaconda3/lib" R

二、安装sf.

remotes::install_github("r-spatial/sf", configure.args = "--with-gdal-config=/home/programs/anaconda3/bin/gdal-config --with-geos-config=/home/programs/anaconda3/bin/geos-config --with-proj-include=/home/programs/anaconda3/include/ --with-proj-lib=/home/programs/anaconda3/lib/")

再次抱歉,占用您的时间,我希望这篇文章对某人有所帮助。

See: https://github.com/r-spatial/sf/issues/335#issuecomment-484985276 https://github.com/r-spatial/sf/issues/335#issuecomment-484985276

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在非标准位置安装带有库的 sf 包 的相关文章

  • 网页抓取(R 语言?)

    我想获取中间栏中的公司名称this http www consumercomplaints in bysubcategory mobile service providers page 1 html页面 以蓝色粗体书写 以及登记投诉者的位置
  • Docker DNS 设置

    我尝试使用自定义网络和 dos 设置创建 docker 容器 docker网络创建 driver bridge opt com docker network bridge enable ip masquerade true opt com
  • gnome-terminal 新选项卡,使用别名作为要执行的命令

    我已经创建了一个别名 bashrc文件如下 alias myproject cd Desktop myproject 当我重新启动终端时保存文件后 输入myproject带我到项目目录 但是当我尝试使用别名作为新的命令参数时gnome te
  • 将函数应用于每个列组合

    我有一个数据框n列并希望对每个列应用一个函数组合列 这与如何cor 函数将数据帧作为输入并生成相关矩阵作为输出 例如 X lt data frame A rnorm 100 B rnorm 100 C rnorm 100 cor X 这将生
  • 在 R 中打印绘图时第一页为空

    我正在尝试创建一个包含多个图的pdf 更具体地说 我想保存我的图 每页 4 个 因此 我在 r 中有以下代码 可以工作 但将页面留空 第一个 pdf Plots plots numeric four in page pdf paper a4
  • 如何转置 R markdown 文档中的表格?

    假设我打印一个名为summary table的数据框 如下所示 summary table data frame a c 1 2 3 b c 11 12 13 c c 21 22 23 d c 31 32 33 e c 41 42 43 f
  • R 中使用 randomForest 进行内存高效预测

    TL DR我想知道使用基于大型数据集 数百个特征 数十万行 构建的随机森林模型执行批量预测的内存有效方法 Details 我正在处理一个大型数据集 内存中超过 3GB 并且想要使用以下方法进行简单的二进制分类randomForest 由于我
  • 通过 SSH 将变量传递给远程脚本

    我正在通过 SSH 从本地服务器在远程服务器上运行脚本 首先使用 SCP 复制该脚本 然后在传递一些参数时调用该脚本 如下所示 scp path to script server example org another path ssh s
  • R igraph - 保存布局?

    我想知道是否可以 保存 igraph 网络的布局 以便其他人能够重现相同的图表 目前 Fruchterman Reingold 算法总是创建一个新的网络 par mfrow c 1 2 g lt erdos renyi game 100 1
  • 如何在 Linux 中使用单行命令获取 Java 版本

    我想通过单个命令获取 Linux 中的 Java 版本 我是 awk 的新手 所以我正在尝试类似的事情 java version awk print 3 但这不会返回版本 我将如何获取1 6 0 21从下面的Java版本输出 java ve
  • gdb 错误 - 文件不是可执行格式:无法识别文件格式

    我正在尝试使用 gdb 调试某个名为 xdf 的程序 但是当我运行 gdb xdf 时 出现以下错误 home nealtitusthomas X ray astronomy heasoft 6 24 x86 64 pc linux gnu
  • 计算数据框中每一行的 R 条件运行总和

    我想创建一个等于 data Rating 的运行总和的列 假设第 3 列和第 4 列中有两个条件成立 特别是 data Year 换句话说 这应该计算直到上一年为止每个 id 的评分累积总和 它应该对数据框中的每一行 大约 50 000 行
  • Xenomai 中的周期性线程实时失败

    我正在创建一个周期性线程 它在模拟输出上输出方波信号 我正在使用 Xenomai API 中的 Posix Skin 和 Analogy 我使用示波器测试了代码的实时性能 并查看了方波信号 频率为 1kHz 的延迟 我应该实现 250us
  • 如何将环境变量传递给shinyapps

    我想将安全参数传递给shinyapps io部署 以便我的应用程序可以通过以下方式获取它们 Sys getenv PASSWORD X 我找不到任何相关内容deployApp函数在rsconnect包裹 您可以使用Renviron网站 or
  • 访问动态创建的 Shiny 模块的返回值

    我正在寻找构建一个闪亮的应用程序 它动态创建返回简单表单的模块 通过 callmodule 我有两个未解决的问题 希望得到一些指导 首先 当向用户提供多个表单 通过单击按钮 时 先前呈现的表单上的值将恢复为默认值 如何停止这种行为 以便值保
  • 如何使用 grid.arrange 移动图例位置

    我试图在一页中排列 4 个图 将图例放在底部中心 我用它来获取其中一个图的图例 因为它们对于四个图来说是相同的 get legend lt function myggplot tmp lt ggplot gtable ggplot buil
  • dplyr 总结小计

    Excel 中数据透视表的一大优点是它们会自动提供小计 首先 我想知道 dplyr 中是否已经创建了任何可以实现此目的的东西 如果没有 实现它的最简单方法是什么 在下面的示例中 我按气缸和化油器的数量显示了平均排量 对于每组气缸 4 6 8
  • 如何在RcppParallel中调用用户定义的函数?

    受到文章的启发http gallery rcpp org articles parallel distance matrix http gallery rcpp org articles parallel distance matrix 我
  • R 编程中的字符串分割

    目前 下面的脚本将组合的项目代码拆分为特定的项目代码 rule2 lt c MR df 1 lt test grep paste rule2 sep collapse test Name y SpaceName 1 lt function
  • 使用命令行将 MediaWiki 维基文本格式转换为 HTML

    我倾向于编写大量文档 因此 MediaWiki 格式对我来说很容易理解 而且比编写传统 HTML 节省了我很多时间 然而 我也写了一篇博客 发现一直从键盘切换到鼠标来输入正确的 HTML 标签会增加很多时间 我希望能够使用 Mediawik

随机推荐

  • GraalVM 无​​法使用数据库连接

    我正在尝试使用 Graalvm 构建本机映像 但每次尝试使用 mvn gluonfx build 并在项目中使用数据库连接构建它时 都会出现错误 例如 H2 DB 正常运行就可以了 无需任何数据库连接 本机映像已成功构建 这是pom文件的代
  • 尝试在所有 Excel 工作表上运行代码

    我正在尝试在一个 Excel 文件中的所有工作表上运行此代码 但这不起作用 它仅合并第一张纸上的单元格 这是我的代码 Sub MergeColumns Dim ws As Worksheet For Each ws In ActiveWor
  • 如何从代码中获取 ComboBox 的 SelectedValue?

    我正在尝试构建类似的东西TLookupComboBox使用LiveBindings 我已经放置了一个普通的TComboBox在 VCL 形式上 我还有一个数据集 其中一些行具有两个字段id and text 然后我使用 LiveBindin
  • JavaFX 在鼠标悬停时显示一个窗格

    我有一个JavaFX我想展示的应用程序pane on mousehover事件在Button 我期望的输出类似于 Windows 任务栏预览样式 将鼠标悬停在TaskBar图标预览窗格显示在顶部 如下所示 我怎样才能使用JavaFX达到这种
  • 对于超过 64 个字符的字符串,什么会影响 Python 字符串比较性能?

    我正在尝试评估比较两个字符串是否会随着长度的增加而变慢 我的计算表明比较字符串应该花费摊销常数时间 但我的 Python 实验产生了奇怪的结果 这是字符串长度 1 到 400 与时间 以毫秒为单位 的关系图 自动垃圾收集已禁用 并且gc c
  • 如何正确使用深层对象图和许多依赖项进行手动 DI

    我相信这个问题已经以某种或其他方式被问到 但我还没有得到它 我们做了一个 GWT 项目 但我的项目负责人不允许使用 GIN Guice 作为 DI 框架 他认为新程序员不会理解它 所以我尝试手动进行 DI 现在我遇到了深层对象图的问题 UI
  • 什么是加载外部资源的 HTML 元素列表? (HTML 电子邮件)

    我正在寻找一个可以加载外部资源的元素列表 因为不允许通过 JavaScript 进行额外的 DOM 操作 我正在尝试使用 HTML 查看器托管来自第三方的电子邮件 当发生这种情况时 我需要删除自动加载的所有资源 以便仅显示基本 HTML 即
  • 安卓用户代理

    我正在 Android 中编写一个应用程序 它使用 WebView 来显示 HTML 内容 我被告知要为我的应用程序获取 Android 用户代理 我该怎么做 我打开了http whatsmyuseragent com http whats
  • R 中 dplyr 中的“添加缺失的分组变量”消息

    我的脚本的一部分以前运行良好 但最近生成了一个奇怪的语句 之后我的许多其他函数都无法正常工作 我试图在每个站点的值排名列表中选择第 8 个和第 23 个位置 以查找每个站点 30 年来每年每天的第 25 个和第 75 个百分位值 我的方法如
  • TensorFlow教程中的next_batchbatch_xs,batch_ys = mnist.train.next_batch(100)来自哪里?

    我正在尝试 TensorFlow 教程 但不明白这一行中的 next batch 来自哪里 batch xs batch ys mnist train next batch 100 我在看 from tensorflow examples
  • Android 中如何读取文本文件? [复制]

    这个问题在这里已经有答案了 我将详细信息保存在 out txt 文件中 该文件已在 data data new android files out txt 中创建了一个文本文件 我可以将信息附加到文本中 但是我无法读取该文件 我使用以下过程
  • 无法在 Android 上选择多个图像上传 - Chrome 网络浏览器

    我想创建一个网络应用程序 用户可以从手机的图片库中选择并上传多个图像 这个功能在iOS上运行良好 但在Android上似乎被破坏了
  • JBoss 4:在哪里部署全局过滤器?

    我想使用 全局 HTTP 过滤器 因此 我编辑了deploy jboss web deployer conf web xml并补充道
  • 模拟Winforms按钮点击动画

    我有一个按钮 按钮内有一个图像控件 当用户单击图像时 我想为按钮设置动画 以便看起来按钮被按下 我并不真正关心实际的按钮按下事件是否触发 这是我想看到的按钮按下的幻觉 注意 我在网上看到的唯一选项涉及直接写入 Windows API 我真的
  • 如何根据简单的多边形绘制图像?

    我想将一个大致矩形区域复制到一个矩形区域 例子 两个区域均由其角点定义 保持大体方向 不翻转等 简单地旋转源图像是行不通的 因为相对边的长度可能不同 到目前为止 我发现没有办法在纯 C 中做到这一点 手动像素复制除外 所以我想我必须求助于
  • 在java中创建指定名称的临时文件

    我有一个 Byte 数组 我想将其内容放入临时文件中 我尝试这样做 try tempFile File createTempFile tmp null FileOutputStream fos new FileOutputStream te
  • 调试时从数据行获取所有列名/列值

    我正在创建一个数据行的模拟实例以进行测试 我尝试从数据库中复制的行包含 37 列 其中包含不同的变量 调试时是否有机会以干净的文本形式获取信息 以便简单地编辑我的模拟对象 我必须调整尼基尔的演员阵容 var colNames dr Tabl
  • 使用 C# 确定谁打开了文件

    使用 C 如何获取有关谁打开了文件的信息 用户名和机器名就足够了 以防万一 我有 Windows 工作站通过 Samba 访问 Linux 文件服务器上的文件 我在工作站上运行的程序中需要此信息 核心 NET 库没有任何方法可以做到这一点
  • 访问指针指向的整数数组时,“sizeof”对不完整类型“int[]”的无效应用

    我正在尝试学习 C 中的指针 并正在编写这个小整数数组指针练习 但遇到了无效的应用程序sizeof不完整类型int 问题 请告诉我哪里出了问题以及如何解决 谢谢 include
  • 在非标准位置安装带有库的 sf 包

    所需的库位于非标准位置 我可以通过以下命令安装 rgdal install packages rgdal type source configure args c with gdal config home programs anacond