如何安装ROracle包?

9

我正在尝试使用install.packages("ROracle")安装ROracle包,但每次都会收到以下消息:"Package which is only available in source form, and may need compilation of C/C++/Fortran: ‘ROracle’"

该包仅以源代码形式提供,并且可能需要编译C/C++/Fortran。

These will not be installed

我找不到解决方法,我该怎么解决这个问题?


你是在使用Linux还是Windows操作系统?对于Linux,我今天已经完成了安装过程并发布了我的步骤这里 - user673592
可能是如何在Windows 7上安装ROracle包?的重复问题。 - Josh Gilfillan
2个回答

8

以下是一篇过去的文章。 如何在Windows 7上安装ROracle包?

从Oracle下载二进制文件:http://www.oracle.com/technetwork/database/database-technologies/r/roracle/downloads/index.html

然后在R中运行以下命令,替换文件路径:

setwd('xxxxx')   # set to path of download
install.packages('ROracle_1.2-1.zip', repos = NULL)
Then load the library and use the package - you may have to change XXXX to whatever is in your TNS Names:

library('ROracle')
drv <- dbDriver("Oracle")
con <- dbConnect(drv, "USER GOES HERE", "PASSWORD GOES HERE", dbname='XXX')
test connection:

dbReadTable(con, 'DUAL')

我可以从源代码安装并直接从Oracle下载预编译的插件。

这并不适用于所有人。错误:在inDL(x,as.logical(local),as.logical(now),...)中为‘ROracle’加载软件包或命名空间失败: - Diego

0

你正在使用 CentOS7 吗?

我已经解决了这个问题很长一段时间,并不得不记录我的发现here。但是整个过程的概览如下:

  1. 使用 yum 安装 Oracle Instant Client。
  2. 设置 OCI_LIBOCI_INC 环境变量。
  3. 运行 ldconfig
  4. 调用 install.packages('ROracle')

同时,使用适当的软件包管理工具,如 packrat,可以帮助您避免再次经历这个过程。


有一些问题阻止了CRAN包上传,因此最新的ROracle驱动程序可以在 https://www.oracle.com/technetwork/database/database-technologies/r/roracle/downloads/index.html 找到。 - Christopher Jones
那个页面需要你登录才能访问。它不是一个可以通过curl从中获取文件的仓库,因此不适合自动化处理。 - CJ Virtucio
的确,这并不理想;但 CRAN 的相关人员非常难以联系,以解决 CRAN 包的问题。 - Christopher Jones

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接