グーグルを何日も検索した後、私はついにこの問題の解決策を見つけることをあきらめ、VS開発者を吹き飛ばしました。
どうやら、IDEは、特定の構成で特定のライブラリのビルドを無効にしたことを認識し、それに依存するプロジェクトのリンカーコマンドラインにそのプロジェクトの出力を追加しないほど賢くはありません。あなたはこれを知っていると確信しています。
ただし、ライブラリプロジェクトからの出力行を依存プロジェクトのコマンドラインに貼り付けるだけなので、出力行を ""に設定すると、依存プロジェクトのリンカーコマンドラインに何も追加されません。
うまくいけば、この問題は将来VisualStudioで修正されるでしょう。私はそれが私のお気に入りのIDEであるため、楽観的であり続け、それがサポートする機能に常に感銘を受けています。ただし、私が見たVSヘルプスレッドの中には、このバグは「設計による」ものであると言っているものがあるため、修正されない可能性があります。ただし、簡単に実行できるようです。
とにかく、要約すると:
- ソリューションエクスプローラーでライブラリプロジェクトを右クリックし、[プロパティ]をクリックします。
- ライブラリプロジェクトが構築されていない「構成/プラットフォーム」ペアに切り替えます。
- [構成のプロパティ]->[ライブラリアン]->[一般]を選択します。
- 「出力ファイル」に「」と入力します(つまり、開き括弧、スペース、閉じ括弧)。
- [OK]をクリックします。
無効になっているライブラリプロジェクトをビルドまたはクリーンアップすると、この回避策でエラーが発生することに注意してください。ソリューションを構築したばかりの場合、無効になっている構成ではスキップされるため、エラーは発生しません。
お役に立てれば!
ダニエル