5

Windowsで実行しようとしてmemcachedいます。安定版の最新版をダウンロードmemcachedし、Windows 7 で Mingw を使用してコンパイルしました。Configure はエラーで失敗しました。

libevent ディレクトリをチェックしています... configure: エラー: libevent が必要です。http://www.monkey.org/~provos/libevent/から入手できます。

  If it's already installed, specify its path using --with-libevent=/dir/

次に、それをダウンロードlibeventしてコンパイルしました。これにより、libeventcore、libevent-extra、libevent-2.0.5 の 3 つの DLL が作成されました。

memcachedオプションを付けてconfigure on を再度実行しました--with-libevent。しかし、何らかの理由で、同じエラーで再び失敗します。なぜ失敗するのか、私にはわかりません。誰でもこの問題を解決するのを手伝ってもらえますか? memcachedまたは、Windows で実行するためのより良い方法はありますか? Windows 用にビルド済みのバイナリをたくさん見てきました。しかし、それらはすべて古いバージョンのmemcached. そして、知る限り、Windowsはmemcached新しいバージョンで公式にサポートされています。

MinGWでWindows7 64bit版を使用しています。

4

3 に答える 3

1

dir で実行するmakelibevent、ファイルの準備が整いますが、それを最大限に活用するには、それらをインストールする必要があります。そのため、make installステップが必要です。プレフィックスで構成した場合は、選択したディレクトリに配置されます。それ以外の場合はです/usr/local

したがってmake install、libevent dir で実行configureし、パラメータなしで memcache から実行するだけで十分かもしれません。

構成段階を通過する際にまだ問題がある場合は、 を参照してconfig.logください。ソース ファイルと、失敗した gcc コマンドが表示されます。

残念ながら、成功configureすることがすべてではありません。後でsys/socket.hnetinet/in.hおよびnetdb.hおそらく-pthreadgcc パラメータを含めると失敗します。残念ながらmingwではコンパイルできません。少なくとも、深刻な移植作業がなければできません。

于 2012-10-30T15:49:32.813 に答える
0

私が知っているように、Windows 用の公式の Memcached ポートはありませんでした (はい、個々の努力はほとんどありませんでした。最新の移植作業は、バージョン 1.2.6 で見つけることができます )

于 2012-10-31T04:44:27.830 に答える
0

私が気付いたパーティーに遅れましたが、答えは使用することです:

$ export LIBS=-lws2_32

これは、または winsocks2 に$LIBSリンクされるようにコンパイル呼び出しの最後に配置されますが、これはおそらく、ビルドを正しく構成しなかったことを意味し、ヘッダーが見つからないなどのエラーが発生します。libws2_32.a#include <sys/socket.h>

mingw-linker-error-winsockを参照してください

于 2014-08-21T22:46:01.277 に答える