2014-09-09 4 views
0

Я пытаюсь установить RMySQL в Windows 8.1. У меня уже установлены MySQL Server 5.1 и R 3.0.3. Они оба добавляются в системный путь и могут быть вызваны из любого места, введя mysql -u root -p или R в командной строке.Не удалось установить пакет RMySQL

Я следовал инструкциям на этой странице http://biostat.mc.vanderbilt.edu/wiki/Main/RMySQL и установлен Rtools, а затем создал Renviron.site файл в папке /etc моей установки R. В файле Renviron.site я правильно установить MYSQL_HOM E следующим образом:

MYSQL_HOME="C:\Program Files\MySQL\MySQL Server 5.6" 

Затем я перезапустил RStudio и попытался установить RMySQL набрав

install.packages('RMySQL',type='source') 

Пакет был скачанный правильно, но дал множество предупреждений и ошибки при установке. Я вставляю их здесь.

Installing package into ‘C:/Users/.../Documents/R/win-library/3.0’ 
(as ‘lib’ is unspecified) 
trying URL 'http://cran.rstudio.com/src/contrib/RMySQL_0.9-3.tar.gz' 
Content type 'application/x-gzip' length 165363 bytes (161 Kb) 
opened URL 
downloaded 161 Kb 

* installing *source* package 'RMySQL' ... 
** package 'RMySQL' successfully unpacked and MD5 sums checked 
checking for $MYSQL_HOME... C:\Program Files\MySQL\MySQL Server 5.6 
cygwin warning: 
    MS-DOS style path detected: C:\Program 
    Preferred POSIX equivalent is: /cygdrive/c/Program 
    CYGWIN environment variable option "nodosfilewarning" turns off this warning. 
    Consult the user's guide for more details about POSIX paths: 
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames 
test: Files\MySQL\MySQL: unknown operand 
** libs 
Warning: this package has a non-empty 'configure.win' file, 
so building only the main architecture 

cygwin warning: 
    MS-DOS style path detected: C:/PROGRA~1/R/R-30~1.3/etc/x64/Makeconf 
    Preferred POSIX equivalent is: /cygdrive/c/PROGRA~1/R/R-30~1.3/etc/x64/Makeconf 
    CYGWIN environment variable option "nodosfilewarning" turns off this warning. 
    Consult the user's guide for more details about POSIX paths: 
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames 
gcc -m64 -I"C:/PROGRA~1/R/R-30~1.3/include" -DNDEBUG -I"C:\Program Files\MySQL\MySQL Server 5.6"/include -I"d:/RCompile/CRANpkg/extralibs64/local/include"  -O2 -Wall -std=gnu99 -mtune=core2 -c RS-DBI.c -o RS-DBI.o 
RS-DBI.c: In function 'RS_na_set': 
RS-DBI.c:1219:11: warning: variable 'c' set but not used [-Wunused-but-set-variable] 
gcc -m64 -I"C:/PROGRA~1/R/R-30~1.3/include" -DNDEBUG -I"C:\Program Files\MySQL\MySQL Server 5.6"/include -I"d:/RCompile/CRANpkg/extralibs64/local/include"  -O2 -Wall -std=gnu99 -mtune=core2 -c RS-MySQL.c -o RS-MySQL.o 
RS-MySQL.c: In function 'RS_MySQL_fetch': 
RS-MySQL.c:657:13: warning: variable 'fld_nullOk' set but not used [-Wunused-but-set-variable] 
RS-MySQL.c: In function 'RS_DBI_invokeBeginGroup': 
RS-MySQL.c:1137:30: warning: variable 'val' set but not used [-Wunused-but-set-variable] 
RS-MySQL.c: In function 'RS_DBI_invokeNewRecord': 
RS-MySQL.c:1158:20: warning: variable 'val' set but not used [-Wunused-but-set-variable] 
RS-MySQL.c: In function 'RS_MySQL_dbApply': 
RS-MySQL.c:1219:38: warning: variable 'fld_nullOk' set but not used [-Wunused-but-set-variable] 
gcc -m64 -shared -s -static-libgcc -o RMySQL.dll tmp.def RS-DBI.o RS-MySQL.o C:\Program Files\MySQL\MySQL Server 5.6/bin/libmySQL.dll -Ld:/RCompile/CRANpkg/extralibs64/local/lib/x64 -Ld:/RCompile/CRANpkg/extralibs64/local/lib -LC:/PROGRA~1/R/R-30~1.3/bin/x64 -lR 
gcc.exe: error: C:\Program Files\MySQL\MySQL Server 5.6/bin/libmySQL.dll: No such file or directory 
ERROR: compilation failed for package 'RMySQL' 
* removing 'C:/Users/.../Documents/R/win-library/3.0/RMySQL' 
Warning in install.packages : 
    running command '"C:/PROGRA~1/R/R-30~1.3/bin/x64/R" CMD INSTALL -l "C:\Users\...\Documents\R\win-library\3.0" C:\Users\..~1\AppData\Local\Temp\RtmpcdXPKB/downloaded_packages/RMySQL_0.9-3.tar.gz' had status 1 
Warning in install.packages : 
    installation of package ‘RMySQL’ had non-zero exit status 

The downloaded source packages are in 
    ‘C:\Users\...\AppData\Local\Temp\RtmpcdXPKB\downloaded_packages’ 

В моей R консоли я проверил, что мой MYSQL_HOME установлен правильно, набрав Sys.getenv('MYSQL_HOME'), которые напечатаны [1] "C:\\Program Files\\MySQL\\MySQL Server 5.6"

Как я должен устранить эти ошибки?

ответ

1

Это сработало. Все, что мне нужно было сделать, это скопировать файл libmysql.dll из папки lib моей установочной директории MySQL в папку bin того же самого.

После этого команда install.packages('RMySQL',type='source') работала нормально.

This ссылка помогла.

Смежные вопросы