私は Fedora 14 を使用しており、MySQL と MySQL サーバー 5.1.42 をインストールして実行しています。ここで、root ユーザーとして次の操作を実行してみました。
gem install mysql
しかし、次のエラーが発生します:
Building native extensions. This could take a while...
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.
/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/ruby.h
Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/mysql-2.8.1 for inspection.
Results logged to /usr/lib/ruby/gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.out
何が問題なのでしょうか? インストールされた ruby 1.8.7 と最新の rubygems 1.3.7 です。
ベストアンサー1
私のように、受け入れられた回答に混乱する可能性のある人のために、Ruby ヘッダー [ ruby-devel ]もインストールする必要があります。
私の命を救ってくれた記事はここ。
そして、これが修正された解決策です (Fedora 13 を使用していることに注意してください)。
yum -y install gcc mysql-devel ruby-devel rubygems
gem install -y mysql -- --with-mysql-config=/usr/bin/mysql_config
Debian および Debian スタイルのパッケージングを使用する他のディストリビューションの場合、Ruby 開発ヘッダーは次のようにインストールされます。
sudo apt-get install ruby-dev
Ubuntu の場合、Ruby 開発ヘッダーは次のようにインストールされます。
sudo apt-get install ruby-all-dev
以前のバージョンの Ruby (2.2 など) を使用している場合は、以下を実行する必要があります。
sudo apt-get install ruby2.2-dev
(2.2 は希望する Ruby のバージョンです)