2011-01-18 15 views
4

typhoeusという名前の宝石をインストールしようとしているときにエラーが発生しました(これは "Service Oriented Design with Rails"の本を読む際に使用されています)これを固定しようとするものが、私はレンガの壁に当たって、誰かが助けることができるようにここに投稿しています。ここでgem install typhoeus - gem拡張機能のビルドに失敗しました

が出力されます。

$ gem install typhoeus 

Building native extensions. This could take a while... 
ERROR: Error installing typhoeus: 
    ERROR: Failed to build gem native extension. 

/Users/my.name/.rvm/rubies/ruby-1.8.7-p302/bin/ruby extconf.rb 
checking for curl/curl.h in /opt/local/include,/opt/local/include/curl,/Users/my.name/.rvm/rubies/ruby-1.8.7-p302/include/curl,/Users/my.name/.rvm/rubies/ruby-1.8.7-p302/include,/usr/include/curl,/usr/local/include/curl... yes 
checking for curl_easy_init() in -lcurl... yes 
creating Makefile 

make 
gcc -I. -I. -I/Users/my.name/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/i686-darwin10.5.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -g -O2 -fno-common -pipe -fno-common -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -c native.c 
In file included from /usr/local/include/curl/curl.h:35, 
       from ./native.h:5, 
       from native.c:1: 
/usr/local/include/curl/curlrules.h:143: error: size of array ‘__curl_rule_01__’ is negative 
make: *** [native.o] Error 1 

私は、最新のXCodeツールとOS X Snow Leopardの上のルビー-1.8.7-P302とRVMを使用しています。

私が持っている他のルビーバージョン(ree-1.8.7-2010.02、ruby-1.9.2-head、およびsystem ruby​​)の下で宝石をインストールしようとするなど、 ARCHFLAGS引数などのアーキテクチャーフラグ(x86_64またはi386)を渡すこと。

私はRubyを初めて使うので、助けてくれれば大変感謝しています!

+0

また、説明したような壊れた状態で宝石をアンインストールする方法を知りたいと思います。 'gem uninstall x'は、gemが完全にインストールされていないために動作しないようです。 –

答えて

2

ご存知のことですが、あなたのシステムは、宝石のソースが期待しているようなものではないようです。

このカールを使用して以来、このold problemから、あなたのカールをアップデートする必要があると思います。働くのでその確認のかもしれません - 代わりにあなたが最近* nixのシステムにインストールしようとすることができます...アップデートをやって、おそらくその価値

-

は、それがシステムにカールをインストールするか、MacPortsのを使用しているです環境問題typhoeusをコンパイルするヘッダーやものを必要とするようgithub pageから

は、古いカールでそれを使用する方法のいくつかのメモ...

幸運、クリス

+0

リンクのおかげで、カールについては、私は最新のバージョンを持っていると信じています。これは 'curl -V'のものです: curl 7.19.7(universal-apple-darwin10.0)libcurl/7.19.7 OpenSSL/0.9 .8l zlib/1.2.3 プロトコル:tftp ftp telnet dict ldap httpファイルhttps ftps 特集:IPv6ラージファイルNTLM SSL libz – Folken

+0

私はリンク(http://curl.haxx.se/mail/lib-2008-09/0051html)は、それが違いをもたらさなかったことを示唆しました:( – Folken

+0

私は'define CURL_SIZEOF_LONG 8 'をそれを取り巻くifdefなしでcurlrules.hに追加し、これはtyphoeusのインストールを許可しました。否定的です: 'すでにビルドされているlibcurlライブラリを使用しようとするアプリケーションを構築していて、このファイルにこのようなエラーが出ている場合は、ライブラリの構築方法と、あなたのアプリケーションにそれを使用しようとしています。既にコンパイルしたバイナリライブラリプロバイダが、あなたが正しく使うために必要な細部をあなたに与えることができるのは唯一のものです」 – Folken

2

そのlibcurlの問題が、あります。問題があります。

libcurl-devまたはlibcurl3-devがインストールされていますか?

+0

私は ' libcurl3-ssl、libcurl3-ssl ...、libcurl3-uni ...、libcurl3-uni ...、libcurl4、libcurl4-shlibs、libcurlpp-ssl、libcurl3-ssl、libcurl3-ssl、 libcurlpp0-s ... - libcurl-devとlibcurl3-devはそこにないので、私のシステムにはないと確信しています。 – Folken

19

これはMacでも同じですが、私はUbuntuで同じ問題が起きていたのかどうかはわかりません。

sudo apt-get install curl 

sudo apt-get install libcurl3 libcurl3-dev 

sudo gem install typhoeus 

は私のために働いただけlibcurlのライブラリをインストールした後

感謝。

+0

ありがとう、これは私のためにUbuntuで働いていました。 –

+0

もKaliのLinuxで動作します – DoodleKana

9

あなただけ実際libcurl3-devのものが必要です

sudo apt-get install libcurl3-dev 
sudo gem install typhoeus 

だけで正常に動作する必要があります。

+0

ありがとう、それは今働きます! – juanpastas

関連する問題