2015-01-22 16 views
10

Wenn das R-Paket RODBC in RStudio auf OS X Yosemite installieren, erhalte ich folgende Fehlermeldung:Installation der RODBC auf OS X Yosemite

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

Dies ist ein häufiger Fehler und zeigt an, dass ODBC-Treiber nicht haben installiert (iODBC-Header sind in OS 10.9 nicht enthalten, daher ist die separate Installation erforderlich). Also installiere ich unixODBC und bestätige, dass die Header-Dateien im PATH vorhanden sind.

Sys.getenv("PATH") gibt mir den richtigen Pfad einschließlich, wo die beiden Dateien gefunden werden.

Wenn ich jedoch install.packages("RODBC",type = "source") erneut versuchen, bleibt derselbe Fehler bestehen. Habe das sowohl mit iODBC als auch mit unixODBC getestet.

Gibt es weitere Tests, die ich durchführen kann, um das Problem zu diagnostizieren?

+0

Haben Sie versucht, dem Rat von [hier] (http://stackoverflow.com/a/26219189/324364) zu folgen? – joran

+0

Absolut versucht, dass. Die erforderlichen Header-Dateien sind vorhanden und im PATH. Nur, wenn RStudio RODBC erstellt, kann es sie nicht finden. – Carl

+0

Haben Sie versucht, die Dateien selbst zu verschieben, anstatt einfach den Pfad festzulegen? – joran

Antwort

20

Wir haben eine Reihe von Yosemite-Systemen mit R 3.1.2, die alle mit den Xcode-Befehlszeilentools Xcode & auf dem neuesten Stand sind. Die folgend konsequent arbeitet mit jedem größeren R-Update oder neuem System installieren (am Terminal):

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 

Es (natürlich) erfordert Homebrew, aber das ist, was wir in unserem Shop standardisierten auf.

Wenn RODBC aktualisiert wird, ändert sich die Versionsnummer (1.3-10, 1.3-11, ...). Die aktuelle Version finden Sie unter https://cran.r-project.org/web/packages/RODBC/index.html.

+0

Ich glaube, dass Sie ein bestätigter Benutzer von brew sind und sogar R damit kompilieren. Haben Sie eine Idee, ob das für diejenigen funktioniert, die die CRAN R-Binärdateien und die Tools von r.att.research.com verwenden? –

+1

es jetzt Version 1.3-13 – williamsurles

+1

Und für einige von, müssen wir "brew install wget" vor der Verwendung dieser. – Ben

3

bekam ich ein 404 wenn RODBC_1.3-10.tar.gz Aufruf so machte ich eine winzige Änderung oben auf das Skript und es funktionierte perfekt: Gebräu Update & & Gebräu unixODBC & & wget „http://cran.r-project.org/src/contrib/RODBC_1.3-11.tar.gz“ installieren & & R CMD INSTALL RODBC_1.3-11.tar.gz

+0

und jetzt ist es Version 1.3-12 ... – PeterK

+0

und jetzt ist es Version 1.3-14 – Abe

3

Ich verwende OS X Yosemite 10.10.5, R-Version 3.2.2. Indem ich die folgenden Schritte befolge, kann ich es zum Laufen bringen.

  1. brew install unixodbc
  2. brew link unixodbc 3,3 (wenn Sie diesen Schritt fehlt, R kann immer noch nicht, dass diese Header-Dateien finden)
  3. install.packages('RODBC', type='source')
1

Auf meinem OS X Yosemite-System mit unixODBC installiert von MacPorts und R .2, install.packages() gescheitert (ob von Repo oder von einem Tarball, den ich lokal gespeichert hatte), aber R CMD INSTALL RODBC_1.3-14.tar.gz hat den Job gemacht.

Verwandte Themen