2013-03-04 7 views
5

RoRは素晴らしいですが、時には私の頭を壁に叩きたい場合があります。私が検索したgemをインストールする際にエラーが発生しました。宝石のネイティブ拡張をビルドできませんでした。そのようなファイルをロードできません - mkmf

sudo gem install thin 
    Fetching: eventmachine-1.0.1.gem (100%) 
    Building native extensions. This could take a while... 
    ERROR: Error installing thin: 
      ERROR: Failed to build gem native extension. 

      /usr/bin/ruby1.9.1 extconf.rb 
      /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError) 
      from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
      from extconf.rb:2:in `<main>' 

:私は単にThinウェブクライアントの宝石をインストールしようとしている、と私はsudo gem install thinを実行すると、私は次のエラーを(それが最初eventmachine宝石のインストールが必要)を取得します"そのようなファイルを読み込むことはできません - mkmf"というエラーですが、ほとんどの問題は1.8-devでは利用可能であったが1.8ではなく、1.9.3を実行しているときにmkmfを持っているとわかりましたlocate mkmfで:

/home/ubuntu/.rvm/rubies/ruby-1.9.3-p362/lib/ruby/1.9.1/mkmf.rb 

mkmfはが置かれているディレクトリは、/ usr/lib /ルビー/ ...ディレクターの下に明らかではありませんy - これは私の問題なのかどうかは分かりませんが、何が起こっているのか、解決策があるのか​​、そこにいる専門家の一人を跳躍させるのに十分かもしれません。

また、私は事前にちょうどgem install ...

のおかげではなく、ルビー1.9.3をインストールするためにRVMを使用しました!

答えて

5

RVMを使用している場合は、 'sudo'を使用しないでください。 sudoを使用すると、libsなどがrvmパスから呼び出されます。

gem install thin 

を参照し、役立つかどうかを確認してください。

〜ケビン・

+0

に - おかげで@ devneck!残念ながら、私は 'sudo'を使用していくつかの宝石をインストールしたと思いますので、私は道に苦しめられるかもしれませんが、これを念頭に置いておきます。 – MandM

+0

また、thin Webサーバーを起動しようとしたときに問題が発生しましたが、Gemfileに単に「thin」を追加することで修正されました。 – MandM

5

私はRVMのこの外のようなエラーがあったが、私は私がruby-devel

+0

それはそれでした! Amazon Linux –

3

私はUbuntuの12.04で同じ問題を抱えているのインストールに必要なことがわかりました。解決:コマンド以下

sudo apt-get install build-essential 
sudo apt-get install curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev 
+0

私は薄いものをインストールしようとする前に実際にこれらを試しましたが、上記のエラーが発生します。私のためのトリックは、コマンドを 'sudo'の前に置かずに宝石をインストールすることでしたが、あなたが示した手順は依然として重要です。 – MandM

+1

ubuntu 14.04で、私はちょうどしなければならなかった: 'sudo apt-get install build-essential'の後ろに 'sudo gem install thin'が続く – genegc

+0

ubuntu 14.04の場合sudo apt-get libpq-devをインストール –

1

てみてください、それは意志の問題

sudo gem install thin -- --with-cflags=\"-O2 -pipe -march=native -w\" 
1

これは私のためにそれをやっ解決するのに役立ちます:

sudo apt-get install ruby-dev 

乾杯をした

+0

私は ' Ubuntuの新しいインストールでsudo apt-get ruby​​-dev build-essentials'をインストールする16.04 – Phrogz

関連する問題