Problem mit der RODBC-Installation in Ubuntu

26579

Ich habe ein Problem mit einigen fehlenden Headern, wenn ich versuche, RODBC in R auf meinem Linux zu installieren. Kann mir jemand bei dieser Ausgabe helfen?

> install.packages("RODBC")  Installing package(s) into ‘/home/administrator/R/x86_64-pc-linux-gnu-library/2.12’ (as ‘lib’ is unspecified)  trying URL 'http://cran.cnr.Berkeley.edu/src/contrib/RODBC_1.3-2.tar.gz' Content type 'application/x-gzip' length 1108358 bytes (1.1 Mb)  opened URL ================================================== downloaded 1.1 Mb  * installing *source* package ‘RODBC’ ... checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables...  checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking how to run the C preprocessor... gcc -E checking for egrep... 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 sql.h usability... no checking sql.h presence... no checking for sql.h... no checking sqlext.h usability... no checking sqlext.h presence... no checking for sqlext.h... no configure: error: "ODBC headers sql.h and sqlext.h not found" ERROR: configuration failed for package ‘RODBC’ * removing ‘/home/administrator/R/x86_64-pc-linux-gnu-library/2.12/RODBC’ Warning in install.packages : installation of package 'RODBC' had non-zero exit status  The downloaded packages are in ‘/tmp/RtmpqfNYpD/downloaded_packages’ 
23
Installieren Sie ao-get-unixODBC * https://github.com/zozlak/RODBCext/issues/2 prashanth vor 6 Jahren 0

6 Antworten auf die Frage

23
neilfws

Wie Dirk in den Kommentaren gesagt hat: Wenn Sie bereits r-cran-rodbc installiert haben, müssen Sie install.packages () nicht innerhalb von R ausführen. "Library (RODBC)" sollte das Paket laden.

Allgemeiner gilt, wenn Sie Fehler in Bezug auf Header sehen, weil eine erforderliche Entwicklungsbibliothek nicht installiert ist. Die Lösung besteht darin, das Web nach den Namen der fehlenden Header-Dateien ( z. B. Google für "sqlext.h ubuntu") zu durchsuchen, um das erforderliche Paket zu ermitteln. In diesem Fall benötigen Sie libiodbc2-dev. So:

sudo apt-get install libiodbc2-dev 

Dann sollte die Installation in R funktionieren.

FWIW das r-cran-binary ist eigentlich gegen die * andere * ODBC-Bibliothek in Debian / Ubuntu: unixodbc-dev aufgebaut. Dirk Eddelbuettel vor 13 Jahren 8
Muss ich irgendetwas mit dem ODBC-Treiber machen? vor 13 Jahren 0
Danke für die Klarstellung Dirk; "sudo apt-get install unixodbc-dev" ist also eine Alternative. vor 13 Jahren 7
Ich folgte sudo apt-get install unixodbc-dev und jetzt ist RODBC installiert und lädt perfekt in R, aber wenn ich versuche, eine Verbindung zu MySQL herzustellen, werden Warnmeldungen angezeigt: 1: In odbcDriverConnect ("Driver = ; Server =" 10.134.5.62; Database = copy_number; User = root; Password = xxxx; Option = 3; "): [RODBC] ERROR: Status IM002, Code 0, Nachricht [unixODBC] [Treibermanager] Name der Datenquelle nicht gefunden, und no Standardtreiber angegeben 2: In odbcDriverConnect ("Treiber = \; | xargs -0 grep -Li "string3 \ | string4" `(Das` Z`-Flag nach `grep` gibt Null-Terminatoren in der Ergebnisliste aus, die mit` xargs -0` kompatibel sein sollten.) vor 13 Jahren 0
Wie konfiguriere ich den ODBC-Treiber? vor 13 Jahren 0
Das ist eine andere Frage. Aber fragen Sie es nicht: Jetzt ist es an der Zeit, einige Dokumentation, Tutorials und Mailinglisten zu lesen. Dann kommen Sie mit einer bestimmten Abfrage zurück, wenn Sie noch festsitzen. vor 13 Jahren 4
10
Dirk Eddelbuettel

Müssen Sie wirklich aus dem Quellcode bauen? Warum benutzt du nicht das Binärpaket?

Also versuchen Sie es stattdessen:

 sudo apt-get install r-cran-rodbc 

oder verwenden Sie eines der GUI-Frontends für das Paketverwaltungssystem.

... oder befolgen Sie [diese Anweisungen] (http://cran.r-project.org/bin/linux/ubuntu/README.html) im Allgemeinen ... vor 13 Jahren 1
Das r-cran-rodbc-Paket ist eigentlich auf den Ubuntu-Repos und nicht auf den CRAN-Paketen. Aber diese README ist immer noch Gold. Dirk Eddelbuettel vor 13 Jahren 0
Ich habe dies bereits getan und es wurde gesagt ... Paketlisten lesen ... Fertig Abhängigkeitsbaum lesen Statusinformationen lesen ... Fertig r-cran-rodbc ist bereits die neueste Version. 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 22 nicht aktualisiert. ABER wenn ich versuche, das Paket in R zu installieren, wird der gleiche Fehler angezeigt vor 13 Jahren 0
Also ist es installiert. Warum möchten Sie eine zweite Kopie außerhalb des Paketverwaltungssystems installieren? Dirk Eddelbuettel vor 13 Jahren 0
Denken Sie daran, dass es immer noch sagt ... Überprüfen der SQL-Benutzbarkeit ... keine Überprüfung der SQL-Präsenz ... keine Überprüfung der SQL-Kontrolle ... keine Überprüfung der SQL-Benutzbarkeit ... keine Überprüfung der SQL-Präsenz ... Keine Prüfung auf sqlext.h ... keine Konfiguration: Fehler: "ODBC-Header sql.h und sqlext.h nicht gefunden" FEHLER: Konfiguration für Paket 'RODBC' fehlgeschlagen * Entfernen '/ home / administrator / R / x86_64-pc- linux-gnu-library / 2.12 / RODBC 'Warnung in install.packages: Installation des Pakets' RODBC 'hatte einen Exit-Status ungleich Null ... vor 13 Jahren 0
Wenn versucht wird, mithilfe des Kanals <- odbcDriverConnect ("Driver = ; Server =" 10.134.5.62; Database = copy_number; User = root; Password = xxxx; Option = 3; "): [RODBC] ERROR: Status IM002, Code 0, Nachricht [unixODBC] [Treibermanager] Name der Datenquelle nicht gefunden, und no Standardtreiber angegeben 2: In odbcDriverConnect ("Treiber = {MySQL ODBC 5.1-Treiber"); Server = 10.134.5.62; Datenbank = Kopiernummer; Benutzer = root; Kennwort = xxxx; Option = 3; "): ODBC-Verbindung fehlgeschlagen vor 13 Jahren 0
Sie müssen `library (RODBC)` aufrufen, bevor Sie es verwenden können. vor 13 Jahren 0
Ich habe danach nur versucht, auf die Datenbank zuzugreifen vor 13 Jahren 0
Ich befürchte, Sie sind etwas verwirrt zwischen der Installation von * RODBC (was kein Problem ist, wie wir jetzt herausgefunden haben - Sie haben das Binärpaket und können es laden) und * RODBC verwenden und konfigurieren *, was ein anderes Ballspiel ist. Suchen Sie hier und auf den Listen nach vorherigen Fragen. Wenn Ihr Backend tatsächlich MySQL ist, können Sie stattdessen RMySQL verwenden, was möglicherweise schneller ist. Dirk Eddelbuettel vor 13 Jahren 0
Geht es um die Installation des ODBC-Treibers? vor 13 Jahren 0
8
Megatron

Nach dem Versuch, Pakete aus allen Lösungen auf dieser und anderen Websites zu installieren, konnte ich das RODBCPaket mit folgendem Befehl erstellen:

sudo apt-get install unixodbc unixodbc-dev

Ich habe auch installiert:

  • libiodbc2-dev
  • libmyodbc
  • odbc-postgresql
3
Fab

FWIW, ich hatte das gleiche Problem ("ODBC-Header sql.h und sqlext.h nicht gefunden") unter OS X und habe es durch die Installation von unixodbc ( brew install unixodbc) behoben.

Dies scheint in keiner Weise für die ursprüngliche Frage relevant zu sein. Erklären, wie die Deinstallation von HomeBrew auf einem OS / X-System der Person, die mit Ubuntu zu kämpfen hat, kaum hilft, finden Sie nicht? Nehmen Sie sich eine Minute Zeit, um zu überlegen, wie Sie Ihre Antwort verbessern und das in der Frage beschriebene Problem angehen können. Sami Laine vor 10 Jahren 2
** os x **? Wie kann die Installation auf osx das Problem von Ubuntu lösen? BlueBerry - Vignesh4303 vor 10 Jahren 0
Unixodbc gibt es auch für Ubuntu. harrymc vor 10 Jahren 0
Ich habe es gerade jetzt ausprobiert, aber R sagte, dass Unixodbc nicht für R Version 3.3.1 verfügbar ist, was auf dem Server läuft. Es scheint ein Upgrade erforderlich zu sein;) Oleg Melnikov vor 7 Jahren 0
1
Erik Jan de Vries

RODBC hängt von R ab (> = 3.0.0 (siehe zum Beispiel https://cran.r-project.org/web/packages/RODBC/RODBC.pdf )

Ihre lokale Paketbibliothek ...

Installing package(s) into '/home/administrator/R/x86_64-pc-linux-gnu-library/2.12' 

... legt nahe, dass möglicherweise eine ältere Version von R installiert ist (2.12). Wenn dies der Fall ist, versuchen Sie, ein Upgrade auf eine aktuelle Version von R durchzuführen.

0
isomorphismes

Ich hatte auch dieses Problem. Für mich bestand die Lösung darin, dass mir einige Ubuntu-Abhängigkeiten wie fehlten

Es ist bemerkenswert, dass install.packages("RODBC", dependencies=TRUE)sie nicht diese Pakete abholen. Sie liegen außerhalb von sich Rselbst.