リンカーエラーを引き起こすコードカバレッジのDevpartner Instrumentation
-
05-07-2019 - |
質問
C#プロジェクト(テストドライバー-exeを作成)と7つのC ++プロジェクト(dll)を含むVisual Studio 2005ソリューションがあります。
このソリューションは、この時点まで問題なく構築できます。
DevPartner studio 8.2をインストールしています。ソリューション全体でテストカバレッジを生成しようとしていますが、ビルド中にネイティブc ++コードを計測する必要があります。このDevPartnerオプションをオンにすると、ビルドでリンカーエラーが発生します。
これに関する経験はありますか?
例:
Error 25 error LNK2001: unresolved external symbol "public: __thiscall IntLong::IntLong(class BufObjBase *,int,int,unsigned char,wchar_t const *,bool)" (??0IntLong@@QAE@PAVBufObjBase@@HHEPB_W_N@Z) X.obj
解決
同僚がこれを理解しました。 他の誰かがこの問題に遭遇した場合:
プロジェクトには、dll、他のdll、およびライブラリの間に依存関係チェーンがあります。通常のビルドでは、Visual Studioはライブラリを見つけるのに十分スマートです。 DevPartnerがインストルメンテーションを挿入しても、そうではありません。
すべての追加の依存関係が(リンクエラーを取得するプロジェクトのプロパティ)で明示的に指定されていることを確認します->リンカー->入力->追加の依存関係。
所属していません StackOverflow