2011-01-31 3 views
4

デフォルトでデバッグシンボルを取り除く必要のないC++プロジェクト(オープンソース)があります。多くのテスト実行ファイルでは、OS Xで生成された多くのdSYMファイルがあります。g ++フラグとして無駄な-g3を試しました。アイデア?OS XでdSYMを生成できないようにする(makeを使用)

ありがとうございます! Juan

答えて

1

Xcodeでコンパイルしていますか? GCCは.dSYMファイルを生成せず、XCodeはそれらを生成するためにdsyumutilを実行します。私の(旧式の)XCode 3.2.3では、プロジェクト設定、ビルドオプション - >デバッグ情報形式で、 "DWARF with dSYM File"または単に "DWARF"を選択できます。後者は、dSYMが生成されるべきではない。

しかし、アップルのツールチェーンでは、DWARFは.oファイルに存在し、最終バイナリにリンクされていないことに注意してください。 (GDBはそれを見つける方法を知っていますが、ディスク上にある.oファイルを必要とします)。バイナリを他の人に送るつもりなら、実際にバイナリと共にdSYMを送る必要があります。

3

Ted Mielczarekは指摘したように、gccはdSYMファイルを単独で生成しません。オブジェクトファイルに生成するために必要な情報を格納するだけです。プロジェクトをビルドするためにmakeを使用している場合は、実行可能ファイルをコンパイル/リンクした後にdsymutilを実行するメークファイルに別の手順があり、見つけて削除できるかどうかが分かります。

0

"-g"フラグを付けてコンパイルしている場合は、それを削除してください。

関連する問題