gemでインストールを行おうとしたときに no such file to load — mkmf (LoadError)

gemでインストールをしようとしたときに以下の様なエラーが出ることがあった。

$ sudo gem install mongo_mapper
Building native extensions. This could take a while...
ERROR: Error installing mongo_mapper:
ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb
extconf.rb:36:in `require': no such file to load -- mkmf (LoadError)
from extconf.rb:36

で、これの原因はネイティブの拡張モジュールをコンパイルする際に必要なヘッダファイルが無いということらしいので開発用のパッケージをインストールしてあげればよい。

$ sudo apt-get install ruby1.8-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
ruby1.8-dev
0 upgraded, 1 newly installed, 0 to remove and 127 not upgraded.
Need to get 577kB of archives.
After this operation, 1,634kB of additional disk space will be used.
Get:1 http://jp.archive.ubuntu.com/ubuntu/ lucid/main ruby1.8-dev 1.8.7.249-2 [577kB]
Fetched 577kB in 0s (1,013kB/s)
Selecting previously deselected package ruby1.8-dev.
(Reading database ... 70807 files and directories currently installed.)
Unpacking ruby1.8-dev (from .../ruby1.8-dev_1.8.7.249-2_i386.deb) ...
Setting up ruby1.8-dev (1.8.7.249-2) ...

これでヘッダファイルが導入されるので再度gemでインストールをすれば先のエラーは回避される様になる。

(Visited 2 times, 1 visits today)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です