在OS X Yosemite上安装RODBC

时间:2015-01-22 05:10:20

标签: r rodbc

在OS X Yosemite上的RStudio中安装R包RODBC时,出现以下错误:

configure: error: "ODBC headers sql.h and sqlext.h not found"

这是一个常见错误,表示尚未安装ODBC驱动程序(OS 10.9中不包含iODBC标头,因此需要单独安装)。因此,我安装unixODBC并确认头文件存在于PATH中。

Sys.getenv("PATH")为我提供了正确的路径,包括找到两个文件的位置。

但是,当我再次尝试install.packages("RODBC",type = "source")时,同样的错误仍然存​​在。用iODBC和unixODBC进行了测试。

我是否可以执行任何其他测试来帮助诊断问题?

4 个答案:

答案 0 :(得分:22)

我们有一堆带有R 3.1.2的Yosemite系统,这些系统都是最新的Xcode& Xcode命令行工具。以下内容始终适用于每个主要R更新或新系统安装(在终端):

brew update && brew install unixODBC && \
  wget "http://cran.r-project.org/src/contrib/RODBC_1.3-10.tar.gz" && \
  R CMD INSTALL RODBC_1.3-10.tar.gz 

它(显然)需要Homebrew,但这就是我们在商店中标准化的内容。

随着RODBC的更新,版本号(1.3-10,1.3-11,...)将会更改。要查找当前版本,请查看https://cran.r-project.org/web/packages/RODBC/index.html

答案 1 :(得分:3)

我在拨打RODBC_1.3-10.tar.gz时得到了404,所以我对上面的脚本进行了一些微小的改动,它完美地运行了: brew update&& brew install unixODBC&& wget“http://cran.r-project.org/src/contrib/RODBC_1.3-11.tar.gz”&& R CMD INSTALL RODBC_1.3-11.tar.gz

答案 2 :(得分:3)

我正在使用OS X Yosemite 10.10.5,R版本3.2.2。按照以下步骤,我可以使它工作。

  1. brew install unixodbc
  2. brew link unixodbc(如果缺少此步骤,R仍然无法找到这些头文件)
  3. install.packages('RODBC', type='source')

答案 3 :(得分:1)

在我的OS X Yosemite系统上,从MacPorts和R 3.3.2安装了unixODBC,install.packages()失败了(无论是来自repo还是来自我本地保存的tarball),R CMD INSTALL RODBC_1.3-14.tar.gz完成了这项工作。< / p>