Google Testをダウンロードし、MSVC 2010 でビルドしました。次に、そのターゲット gtest.lib (または、デバッグ構成の下の gtestd.lib) を実行可能ファイルにリンクしました。
結果は、複数定義されたシンボルの長いリストになります。要するに:
error LNK1169: one or more multiply defined symbols found
warning LNK4098: defaultlib 'MSVCRTD' conflicts with use of other libs; use /NODEFAULTLIB:library
warning LNK4098: defaultlib 'LIBCMTD' conflicts with use of other libs; use /NODEFAULTLIB:library
error LNK2005: _vprintf already defined in MSVCRTD.lib(MSVCR100D.dll)
error LNK2005: _printf already defined in MSVCRTD.lib(MSVCR100D.dll)
そしてリストは延々と続きます。ほとんどは VC ランタイム シンボルですが、いくつかは gtest シンボルです。私が犯したエラーは何ですか?gtest プライマーには次のように記載されています。
Google Test を使用してテスト プログラムを作成するには、Google Test をライブラリにコンパイルし、テストをリンクする必要があります。
しかし、それ以上のことはあまり詳しく説明していません。