スタティックライブラリには完全なデバッグシンボル情報があります。 DLLの場合、その情報は.pdbファイルにあります(これは、静的なlibと似ていると想定しています)。
静的なライブラリにリンクすると、シンボル情報は.exeにコピーされません.pdbファイルに配置されます(ビルドが.pdbファイルを作成するように設定されている場合)。 .pdbファイルは、.pdbの作成の有無にかかわらず、.exeで配布する必要はありません。
私がboostpro.comから入手したあらかじめ構築されたライブラリのダウンロードでは、彼らが提供するブーストDLL用の.pdbファイルがありません。 DLLを自分でビルドすると、おそらく.pdbファイルが取得されます(詳細についてはわかりませんが、いくつかのconfigオプションを設定する必要があります)。
アップデート:私は簡単にブーストDLLを.PDBファイルを得ることについて間違っているかもしれないよう
が見えます。http://comments.gmane.org/gmane.comp.lib.boost.build/23246から:
> Is there an additional option that I can pass on the command line to
> have the (correctly generated) PDB files also copied into the stage
> directory?
ないこの時点で。あなただけ <install-type>SHARED_LIB
または <install-type>STATIC_LIB
は今書か ですどこでも<install-type>PDB
を追加 に tools/build/v2/tools/package.jam
をハックすることができます。
これは非常に興味深いものです...デバッグ情報でリリースの静的ライブラリをコンパイルしていますか?そうすれば、プログラム全体の最適化ができなくなり、コードが遅くなります(または私は間違っています)。 – Samaursa
.pdbファイルはWindows/Visual Studioを前提としていますが、これは質問には記載されていませんが、有効である可能性があります。 –
@トニー:そうだよ - "私のセットアップで..." –