RMySQL ライブラリは R-64bit 版で動作します。しかし、それでも32ビットRバージョンでは動作しません
32 バージョン R でのみ動作する statconn ツール (DCOM、rcom) を使用しているため、
R-32bit バージョンで MySQL DB にアクセスする必要があります。
以下は私が今までやったことです。
- 最新のRtoolsをインストール
- 64ビットのMySQLクライアントをインストール(32ビット版は動作しません)
- C:\Program Files\R\R-2.12.1\etc\Renviron.site MYSQL_HOME=C:/mysql (mysql ファイルへのパス) のような行を追加します。
- libmysql.lib を (mysql/lib/opt、R_HOME\bin、windows\system32) にコピーします。
- install.packages('RMySQL',type='ソース')
- R_HOME、MYSQL_HOMEを環境変数に適切に設定します
- R_HOME、MYSQL_HOME、Rtools をパスに追加します。
エラーメッセージ:
RS-MySQL.o:RS-MySQL.c:(.text+0x2f23): undefined reference to `mysql_get_client_version@0'
RS-MySQL.o:RS-MySQL.c:(.text+0x2f44): undefined reference to `mysql_get_client_info@0'
RS-MySQL.o:RS-MySQL.c:(.text+0x2f71): undefined reference to `mysql_server_end@0'
collect2: ld returned 1 exit status
ERROR: compilation failed for package 'RMySQL'
* removing 'C:/Program Files/R/R-2.15.1/library/RMySQL'
64 ビット MySQL で 32 ビット R バージョンを使用するにはどうすればよいですか?
ご参考までに。
「RODBC」ライブラリは 64 ビット R バージョンで動作しますが、32 ビット R バージョン