0

MongoDB C++ クライアントをインストールしたい。私はそのマニュアルを読みました:

複数の C++ 標準ライブラリを提供するシステムでは、boost にリンクされた標準ライブラリがドライバにリンクされたものと一致することを確認する必要があります。

私のOSはubuntu 14.04です。
上記の引用は私のシステムに適用されますか?
apt-get install libboost-all-dev をインストールしたブーストに、どの標準ライブラリがリンクされているかを確認するにはどうすればよいですか?
libboost-all-dev が c++11 に対してリンクされていない場合、ソースからビルドする必要がありますか?
アプリケーションでマルチスレッドを使用する予定ですが、ブースト、mongodb C++ クライアント、およびその他のライブラリがマルチスレッド フラグを使用してリンクされていることを確認する必要がありますか?

4

1 に答える 1

0

Ubuntu は、複数の C++ 標準ライブラリを提供するシステムではありません。たとえば、ubuntu では GPLish libstdc++ を使用し、libc++ は必要ありません。

ubuntuのブーストパッケージがc ++ 11とリンクされているかどうかを確認する方法はわかりませんが、mongoをc ++ 11とリンクするようにすると、mongoがクラッシュしなくなりました。

したがって、ubuntu を使用していて、mongo のレガシー C++ ドライバーを使用したい場合は、c++11 フラグを指定して mongo をビルドする必要があります。
例えば:

scons --c++11 install
于 2015-10-28T13:10:00.107 に答える