3

私が持っている MinGW ツールチェーン ビルドでデバッグできなかったクラッシュが発生するまで、主に Windows で GCC を使用してアプリを開発しています。Linux VM をインストールし、そこでデバッグしました。必要なシンボルが libstdc++ に含まれていたので、これは可能でした。

libstdc++ の Linux ビルドはリリース (最適化されたバージョン) だったと確信しています。これは、使用するすべてのアプリにインストールするのが通常であるためです。Windows版も同様です。しかし、どうすれば Linux バージョンに必要なデバッグ シンボルを組み込むことができますか? または、本当に答えが欲しい質問をした場合: どうすれば GCC の libstdc++ をビルドして、そこから有用なスタック トレースを取得し、最適化することができますか? ? (注: GCC/MinGW を再コンパイルできるので、問題ありません)

Visual Studio にはデバッグ バージョンとリリース バージョンの両方があることは知っていますが、Linux でそのようなことを聞​​いたことはありません。私が覚えているように、デバッグシンボルは常に別のパッケージにあります。

情報: プレーンな GCC パッケージがインストールされた Arch Linux を使用していました (特別なデバッグ バージョンは明示的に選択されていません)。

4

1 に答える 1

1

私はこれに自分で答えます:あなたはで構成する必要があります

--with-stdcxx-debug

これにより、デバッグ情報を含む共有およびインポート ライブラリが lib/bin および lib/debug に配置されます。

于 2011-06-10T14:11:14.327 に答える