これはバージョンの問題のようです。表示されるエラーは、一部のコンポーネントが 1 つのライブラリ セットでビルドされ、他のコンポーネントが別のライブラリ セットでビルドされたことを示しています。
MT (マルチスレッド - デバッグなし) や MDd (DLL のマルチスレッド デバッグ) など、異なるタイプのライブラリでこのコードを使用する他のコンポーネントをビルドしている場合、このエラーが発生する可能性があります。Boost 用の間違ったライブラリ セットにリンクしている場合にも、このエラーが発生する可能性があります。独自のコードで使用しているのと同じ種類のライブラリでビルドする必要があります。MTD を使用している場合は、Boost ライブラリの MTD バージョンでもビルドします。
プロジェクトが使用しているライブラリを確認するには、ソリューション エクスプローラー ウィンドウでプロジェクトを右クリックし、プロパティを選択します。プロパティはプロジェクト メニューから選択することもできますが、これを行う前に、編集ウィンドウで開いている現在のファイルとしてそのプロジェクトにファイルがあることを確認してください。ランタイム ライブラリの下に、使用しているライブラリのタイプが表示されます。プロジェクト タイプが dll の場合、この値は実際には MDd に設定する必要があります。プロジェクトのタイプを確認するには、プロパティの下のリンカー (またはライブラリアン) オプションをクリックし、出力ファイルが dll の場合、プロジェクトのタイプは dll です。ライブラリまたは exe と表示されている場合、プロジェクトはそれぞれライブラリまたは exe です。特定のタイプのプロジェクトはすべて同じ方法でビルドする必要があります。たとえば、リリース バージョンとデバッグ バージョンを混在させようとしないでください。ビルド中の exe がある場合は、ライブラリ タイプのプロジェクトのビルドに使用されたライブラリを使用します。ライブラリを設定するには、プロパティで [構成プロパティ] / [C/C++] / [コード生成] / [ランタイム ライブラリ] を選択し、ドロップダウン ボックスからタイプを選択します。
すべてのプロジェクトで構成が正しいと思われる場合は、最初から再構築してみてください。これを行うには、プロジェクトを右クリックして [クリーン] を選択し、続いて [再構築] を選択します。
ライブラリをビルドするために b2.exe を実行するときは、常に -q オプションを使用して、エラーが発生した場合に停止させます。ビルドにエラーがある場合、b2 からの出力がかなりあるため、エラーを確認するのが難しい場合があります。b2 に関連するオプションのリストについては、このリンクを参照してください。
ファイル libboost_system-vc110-mt-1_53.lib は、VS 2012 プロジェクトにのみ使用できることにも注意してください。VS 2012 を使用していない場合は、2 つのことを行う必要があります。まず、2012 は C++ 標準の最新バージョンを最も適切にサポートする最初のバージョンであるため、2012 より前のバージョンの Visual Studio ではブースト バージョン 1.53 以降を使用できない場合があります。したがって、おそらく代わりに 1.52 を使用する必要があります。2 番目に行う必要があるのは、使用している Visual Studio のバージョンをツールセット オプション (たとえば、---toolset=msvc-10.0 - VS 2010 を使用している場合) で b2 に指定して、正しいライブラリがビルドされるようにすることです。あなたのために。