2009-06-17 6 views
0

多くのサードパーティの.libファイルとリンクしており、リンク時に多数のLNK4099警告が表示されます。この警告メッセージは抑止できないようですので、.libファイルからすべてのデバッグ情報を削除すると警告は表示されません。デバッグ情報を削除する方法はありますか?これらは私がソースコードを持っていないライブラリです。COFFライブラリファイル(.lib)からデバッグ情報を取り除くことは可能ですか?

私はVS2005 C++を使用しています(Windowsではもちろんです)。

答えて

1

少なくとも、従来のツールでは可能ではないとは思わない。ベンダーに連絡し、デバッグ情報なしで.libファイルを再構築するように要求することをお勧めします。

0

COFFフォーマット - Unix上に見られるように、どんな速度であっても、合理的に整理されています。そこにはたくさんのセクションがあります。また、材料を取り除くために使用できる「コメントセクションを操作する」ツールのmcsもありました。このツールはELF(COFFの拡張版)用のSolarisや、おそらく他の場所でも利用可能です。

これは、プログラムを見つけてMSオブジェクトファイルで使用できるということです。

一方、デバッグ情報を削除することで苦情が解決されるとは思われません。デバッグ情報はプログラムの実行(またはリンク)に影響してはなりません。つまり、Googleの「Microsoft lnk4009」で見つかった情報は決定的ではない。 2つのエントリが表示されますが、両方とも 'LNK4009'メッセージではなく 'LNK4099'と表示されます。

+0

エラーはLNK4099です。私は質問でそれを修正しました。 – jmatthias

+0

正しいエラー番号(copy'n'pasteより安全です)では、Google検索で@Ropeがあなたを指しているリンクを含め、より多くが見つかります。 –

0

私はあなたがすでにMSDNから、このページを読んだことが推測:

MSDN: Linker Tools Warning LNK4099

リンクはあなたがされているオブジェクトのための.pdbファイルがない場合は.../DEBUGリンカオプションを削除する「と述べていますリンク。

関連する問題