conta's diary

思ったこと、やったことを書いてます。 twitter: @conta_

MacにMongo c++ driver をインストール(brewで)

昔はインストールしたりリンクしたりするのが すごくめんどくさかったけど(sconとかインストーラのバグとか)、今はbrewで簡単にインストールできるみたいだ。 なんか2.5.xになってDocumentもかっこよくなってきてるしね。

環境

  • Mac OSX 10.9
  • mongo 2.5.5
  • libmongoclient 2.5.4
  • boost 1.55.0

インストール

install mongodb

brew install mongo

これで実はlibmongoclient.aができてる。 しかしながら自分でboost libraryをインストールしているのであれば、 リンクする際にエラー祭りが発生してビルドエラーになるので、libmongoclientを別で入れてあげる。(Mongoのソース中にBoostのコードが一部入ってる?らしい、それでコンフリクトが起きちゃってるのではないかと)
*ちなみにソースからインストールする場合は --external的なオプションでboostのパスを指定すればOKだった気がする。今回はbrewのみでインストールすることが目的なのでスルーします。

install c++ driver

brew install libmongoclient

途中で、下記のように怒られる。

Warning: Could not link libmongoclient. Unlinking...
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
You can try again using `brew link libmongoclient'

なので、こんな感じで上書きしましょう。

brew link libmongoclient --overwrite

これで、/usr/local/libの中にlibmongoclient.alibmongoclient.dylibができてる。

ls -la /usr/local/lib/ |grep libmongoclient
libmongoclient.a -> ../Cellar/libmongoclient/2.5.4/lib/libmongoclient.a
libmongoclient.dylib -> ../Cellar/libmongoclient/2.5.4/lib/libmongoclient.dylib

これで快適Mongo生活++