Saya memiliki masalah dengan beberapa header yang hilang ketika mencoba menginstal RODBC di R di linux saya. Adakah yang bisa membantu saya dengan masalah ini?
> 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’
Jawaban:
Seperti yang dikatakan Dirk dalam komentar, jika Anda telah menginstal r-cran-rodbc, tidak perlu menjalankan install.packages () dari dalam R. "library (RODBC)" harus memuat paket.
Lebih umum, ketika Anda melihat kesalahan mengenai header, itu karena pustaka pengembangan yang diperlukan tidak diinstal. Solusinya adalah mencari di web menggunakan nama-nama file header yang hilang ( mis. Google untuk "sqlext.h ubuntu"), untuk mengidentifikasi paket yang diperlukan. Dalam hal ini, Anda perlu libiodbc2-dev. Begitu:
Maka instal dalam R harus bekerja.
sumber
Apakah Anda benar-benar perlu membangun dari sumber? Mengapa Anda tidak menggunakan paket biner?
Jadi mungkin coba ini sebagai gantinya:
atau gunakan salah satu antarmuka GUI ke sistem manajemen paket.
sumber
Setelah mencoba menginstal paket dari semua solusi di situs ini dan yang lain, saya berhasil membangun
RODBC
paket menggunakan:sudo apt-get install unixodbc unixodbc-dev
Saya juga menginstal:
sumber
FWIW, saya memiliki masalah yang sama ("header ODBC sql.h dan sqlext.h tidak ditemukan") pada OS X, dan memperbaikinya dengan menginstal unixodbc (
brew install unixodbc
)sumber
RODBC tergantung pada R (> = 3.0.0 (lihat misalnya https://cran.r-project.org/web/packages/RODBC/RODBC.pdf )
Perpustakaan paket lokal Anda ...
... menyarankan Anda menginstal versi R yang lebih lama (2.12). Jika ini masalahnya, coba perbarui ke versi R. terbaru
sumber
Saya juga punya masalah ini. Bagi saya solusinya adalah saya kehilangan beberapa dependensi Ubuntu seperti
Ini dicatat bahwa
install.packages("RODBC", dependencies=TRUE)
tidak tidak mengambil paket ini. Mereka berbaring di luarR
.sumber