ビルドしようとするとリンカー エラーが発生します (たくさんあります...ここにそのようなものがあります)。
error LNK2005: "public: int __cdecl std::ios_base::rdstate(void)const " (?rdstate@ios_base@std@@QEBAHXZ) already defined in msvcprt.lib(MSVCP90.dll)
私はCプロジェクトを持っています:
- 構成タイプ: 静的ライブラリ (.lib)
- MFC の使用: 標準の Windows ライブラリを使用する
- ATL の使用: ATL を使用しない
- ランタイム ライブラリ: マルチスレッド DLL (/MD)
私はC++プロジェクトを持っています:
- 構成タイプ: ダイナミック ライブラリ (.dll)
- MFC の使用: 標準の Windows ライブラリを使用する
- ATL の使用: ATL への動的リンク
- ランタイム ライブラリ: マルチスレッド DLL (/MD)
上記の 2 つのプロジェクトに依存する C++/CLI プロジェクトがあります。
- 構成タイプ: ダイナミック ライブラリ (.dll)
- MFC の使用: 標準の Windows ライブラリを使用する
- ATL の使用: ATL への動的リンク
- ランタイム ライブラリ: マルチスレッド DLL (/MD)
- 共通言語ランタイム サポート (/clr)
- これは C プロジェクト .lib にリンクします
- これには、C++ DLL へのプロジェクト参照があります。
これらは Visual 2010 を使用してビルドされていますが、v3.5 ツールセット (つまり 9.0 を使用) を使用しています。
私が見たほとんどの解決策は、ランタイム ライブラリの設定が同期していないことを示唆しています。ここではそうではありません。それらはすべてマルチスレッド DLL です。これらはすべて Release x64 で構築されています。
これらのプロジェクト設定で何か飛び出すことはありますか? 他に共有できる関連設定はありますか?