ソフトウェアのリリース バージョン (gcc でコンパイルされた C++ コード) から送信されたコア ファイルをデバッグする方法を見つけようとしています。理想的には、リリース ビルドをデプロイし、デバッグ ビルドを手元に置いてデバッグに使用できるようにしたいので、シンボル テーブルなどを用意します。
私の問題は、(私が理解しているように) デバッグ ビルドとリリース ビルドが同じであることが保証されていないことです。そのため、gdb を起動してデバッグ実行可能ファイルを指定すると、フィールドのコア ファイルがゴミのように見えることがあります。
リリースされたソフトウェアのサイズやパフォーマンスに影響を与えずに、これを回避する方法はありますか (ここに問題があります)。これは大規模なアプリケーションであり、デバッグ ビルドのパフォーマンスはおそらく顧客に受け入れられないでしょう。一度ビルド (デバッグ) してから、シンボル テーブルを取り除き、それをリリース ビルドとして出荷するという提案を見てきましたが、そのアプローチではパフォーマンスが低下するのではないでしょうか?
この問題に対処するために試したこと、または現在使用していることについて誰か提案がありますか? ありがとう!