0

私はこれらのリンクエラーを回避しようとしています:

error LNK2001: unresolved external symbol "__declspec(dllimport) public void __thiscall std::basic_ostream(char,struc std::char_traits<char>>::_0sfx(void)" 

Visual Studio C ++ 2010を使用し、Visual Studio C ++ 6.0で試しましたが、それでも同じエラーが表示されます。

オブジェクトファイルが見つかったので、stdライブラリの実装が見つからないのではないかと思いますか?いくつかのライブラリ(libc.lib、libcmt.lib、msvcrt.libなど)で/ nodefaultlibオプションを試しましたが、状況はまったく改善されませんでした。

誰かがエラーが発生する理由と私がどこを見るべきかを説明できますか?

他の同様の質問で提案された解決策を試しましたが、それらは適用できないか、問題を解決しません。

ありがとう

4

2 に答える 2

0

この問題は、一部のライブラリが静的にリンクされ、他のライブラリが動的にリンクされている場合に発生する可能性があります。

基本的に、両方のコードを静的バージョンCRT(コンパイラ スイッチ/MTおよび/MTd) と動的バージョンCRT(スイッチ/MD/MDd) でコンパイルした場合。プロジェクトが何を使用しているかを確認できますProject Properies - c++ - Code Generaion - Runtime Library)

すべてのライブラリがプロジェクトと同じスイッチでコンパイルされていることを確認してください。

于 2012-10-17T08:38:38.503 に答える
0

/nodefaultlib オプションを削除する必要があります。

于 2012-10-17T06:50:11.040 に答える