0

VS 2010 で開発された C++ コードをビルドしようとしています。

コンパイルできますが、リンク中に次のエラーが発生します。

Error   1   error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1700' in myfile.obj  

それらが異なるバージョンの MSVC でビルドされているためであることはわかっていますが、古いバージョンの MSVC でコンパイルされたライブラリを使用するように MSVC を構成する方法はありますか?

編集 1

最後に、VS2012 Express をインストールしてコードをコンパイルすることにしました。Microsoft は、あるプロジェクトをあるバージョンの MSVC から別のバージョンに簡単に移植することを好まないようです。

4

2 に答える 2

1

この問題を解決するには、次の 3 つの解決策があります。

  • 2012 年に VS2010 ライブラリを再コンパイルします (ただし、ソースが必要です)。または、利用可能な 2012 ライブラリが既にある場合 (ただし、既にチェックしていると思います)。
  • または、次のことができます。

    [プロジェクトのプロパティ] で [全般] を選択し、[プラットフォーム ツールセット] 設定を [Visual Studio 2010 (v100)] に変更します。

  • または、ライブラリを外部としてリンクできます。

于 2013-07-09T14:09:26.850 に答える