7

Visual Studio 2003 で、対応する PDB ファイルを持たないライブラリにリンクすると、次の警告が表示されます。

foo.lib(bar.obj): 警告 LNK4099: PDB 'other.pdb' が見つかりませんでした。デバッグ情報がないかのようにオブジェクトをリンクする

PDBが元のビルド場所にある場合、VSはそれらを見つけることができ、現在のビルドディレクトリにある場合も同様ですが、それはそうです。PDB を探す場所を Visual Studio に正確に伝える方法はありますか? シンボル サーバーが機能する可能性があるという漠然とした考えがありますが、それはかなりのオーバーヘッドのようです。インクルードパスを追加するなど、link.exe /pdbpath c:\pdbs_are_right_here検索にパスを追加するようなものを探しています。/Iまたは、現在のディレクトリと PDB が書き込まれた元の絶対パス以外に検索するパスはありますか?

4

1 に答える 1

0

対応する pdb へのパスはライブラリ自体に埋め込まれていると思います。ライブラリのビルド スイッチで c:\pdbs_are_right_here に変更できます (サード パーティではなく実際に自分のものであると仮定します)。

DLL の場合、プロジェクト プロパティ\リンカー\デバッグ\生成プログラム データベース ファイルを意味します。

静的ライブラリの場合、既定の名前は VS2013 ('vc120.pdb') で統一されていますが、これは VS2015 で変更されたと思い、VS2003 についてはわかりません。とにかく、VS2013\2012\2010 で作業している場合は、名前も明示的にオーバーライドする必要があります。

于 2015-05-30T19:10:08.487 に答える