質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

Q&A

解決済

1回答

1328閲覧

過去投稿も参考にしていますがRuby 2.4にmysql2が正常に導入できない

ambiguous

総合スコア33

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

0グッド

0クリップ

投稿2020/01/20 06:32

Ruby 2.4環境からMySQL(MarinaDB)に接続したいと考えています。

現在、Windows10(64bit)上でRuby 2.4 + Rails 4.2.11 + MSYS2の環境で開発を行っています。事情によりIDEが32bit版のため、各種ライブラリも32bit版を利用しています。当Teratail他、各所の情報を元にmysql2の導入を試みていますが、残念ながら成功しません。MySQL(MarinaDB)のバージョンは5.5系になると思います。

下記の手順で実施しています。

(1)marinadb-connector-Cのインストール(MSIを利用...zipが無いもので)
(もしくはMySQL Connector/Cのzip展開でも大丈夫なのかな?)
(2)(念のため)環境変数RUBY_MYSQL2_LIBMYSQL_DLLを設定
(3)gem install mysql2を実施
(gem install mysql2 -v 0.4.10 --platform=ruby -- '--no-vendor-libmysql --with-mysql-dir="C:/xxxx" --with-mysql-lib="C:/xxxx/lib" --with-mysql-include="C:/xxxx/include"')

本来ならバージョン指定は不要と思うのですが、バージョン指定しない場合0.5.3が導入され、64bitのパッケージを要求されてしまうため(32bit版を導入してもダメでした)、バージョンを指定しています。結果、Failed to build gem native extension.で成功しません。

仮に成功したように見えた時も、ロードエラーになります。

過去の質問や他のサイトを拝見する限り、上記の手順で可能なように思うのですが、ほかに足りない部分がありますでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/01/20 06:55

参考にした回答、記事URLを貼られないと正しいかどうか誰にも判断できないと思います
ambiguous

2020/01/20 07:14

失礼しました。参考を含め見たサイトは数多いのですが、そのうちのいくつかとして下記のサイト等があります。 https://teratail.com/questions/181707 https://teratail.com/questions/124587 https://stackoverflow.com/questions/19014117/ruby-mysql2-gem-installation-on-windows-7 http://www.cattlemute.com/2017/09/29/51/ https://itlogs.net/windows-rails-environment-2/ https://qiita.com/tunepolo/items/9ad3b5d653e21d5ae137 Gemfileの設定は下記のようにしています。 gem "mysql2", "~> 0.4.6", :platforms => [:mri, :mingw, :x64_mingw]
m.ts10806

2020/01/20 07:18

質問は編集できますので適宜調整してください。 ※なお、私は「MySQL」で見ておりRubyは未経験なのでおそらく回答はできません
ambiguous

2020/01/20 07:30

いえいえ、結構です。ご指摘ありがとうござました。
asm

2020/01/21 01:09

> 事情によりIDEが32bit版のため、各種ライブラリも32bit版を利用しています。 IDEとは具体的になんなのでしょうか? IDEとRubyの環境を揃える必要がよく分からないです。 > バージョン指定しない場合0.5.3が導入され、64bitのパッケージを要求されてしまう 具体的にどのパッケージですか? ・mingw-w64-i686を64bit用と誤解してる ・ruby(64bit)にdll(32bit)を使おうとしている あたりが有力です
guest

回答1

0

自己解決

どうやらmysql-connectorのバージョンにより影響を受けていたみたいです。細かい部分については未だ検証中ですが、開発環境やOS、ライブラリのバージョンの組み合わせについて今後整理していきたいと思います。ありがとうございました。

投稿2020/01/23 09:49

ambiguous

総合スコア33

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問