17

バンドル インストールを行うたびに、アプリで kgio をインストールできないようです。このエラーが発生します。誰でも私を助けることができますか?私はすでに5回ほど再バンドルを試みました。

C:/RailsInstaller/Ruby1.9.3/bin/ruby.exe extconf.rb
    checking for CLOCK_MONOTONIC in time.h... no
    checking for CLOCK_MONOTONIC() in time.h... no
    checking for clockid_t in time.h... no
    checking for clock_gettime() in -lrt... no
    checking for t_open() in -lnsl... no
    checking for socket() in -lsocket... no
    checking for poll() in poll.h... no
    checking for getaddrinfo() in sys/types.h,sys/socket.h,netdb.h... no
    getaddrinfo required
    *** extconf.rb failed ***
    Could not create Makefile due to some reason, probably lack of
    necessary libraries and/or headers.  Check the mkmf.log file for more
    details.  You may need configuration options.

    Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=C:/RailsInstaller/Ruby1.9.3/bin/ruby
        --with-rtlib
        --without-rtlib
        --with-nsllib
        --without-nsllib
        --with-socketlib
        --without-socketlib
4

2 に答える 2

26

実は答えは、Windowsではkgioを使えないということです。それを見つける前に、ここで他の答えに3時間汗を流しました。開発者によると、Kgio には UNIX ライクな環境が必要です。

于 2013-03-17T04:45:30.440 に答える
9

必要なライブラリが不足している可能性があります。

RubyInstallerWikiからも

この失敗は、WindowsがDLLを検索する方法が原因で、DevKitに統合されたバージョン以外のバージョンのlibiconv-2.dllを使用したネイティブgemコンパイル/インストールプロセスが原因です。

これは、コンピューターでファイルlibiconv-2.dllを検索し、名前を変更、削除、またはその他の方法で見つかったインスタンスを邪魔にならない場所に移動して、ネイティブのgemインストールプロセスまたは場合によってはバンドルインストールを再実行することで回避できます。

libiconv-2.dllファイルを見つけたディレクトリに配置した理由や理由がわからない場合は、必要なgemをコンパイルした後でファイルを元に戻すことをお勧めします。これにより、他のアプリケーションが破損するのを防ぐことができます。

編集

kgio gemは、Unixライクなシステム(http://bogomips.org/kgio/)でのみビルドおよび実行されます。これは、Windowsではネイティブに使用できない関数を使用します。

Unicornを使用しようとしている場合は、Webサーバーを交換するだけです。

Thinを試してみてください。Gemfileに次の行を追加します。

gem 'thin'
于 2013-01-23T15:35:26.143 に答える