問題タブ [google-breakpad]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-c++ - MSVC (Microsoft Visual C++) 2015 で Google Crashpad をビルドするにはどうすればよいですか?
Google Crashpad は、MSVC 2015 および MSVC 2017 でコンパイルできると主張しています (この投稿の執筆時点)。
ただし、Google Crashpad はmini_chromiumに依存しています。これは、 MSVC 2017 以降が必要であることを明示的に示すchromium プロジェクトです。
このガイド、最新の Crashpad コミット、およびdepot_tools に従って Crashpadをコンパイルしてみました。MSVC 2017 では正常にコンパイルできますが、MSVC 2015 と mini_chromium でかなりの数のコンパイラ エラーが発生します。MSVC 2015 を使用してコンパイルされたライブラリに対してクライアント ソフトウェアを動的にリンクする必要があります。
この StackOverflow Questionにより、Crashpad を動的ライブラリに組み込むことができました。ただし、MSVC 2017 でしか実行できません。後で MSVC 2015 でコンパイルされたソフトウェアを MSVC 2017 の Crashpad ビルドにリンクしようとすると、このエラーが発生します。
signals - シグナルが自動的に再スローされるのはいつですか?
ブレークパッドの次のコメントは、シグナル ハンドラーをリセットするとシグナルが強制的に再スローされることを示唆しています。ただし、この動作について説明しているドキュメントをオンラインで見つけることができませんでした。
さらに、ここのコメントには、シグナル ハンドラが戻ると、シグナルが再スローされると書かれています。これは、シグナル ハンドラが復元またはデフォルトにリセットされた結果でもありますか?