1
emacsクラッシュをデバッグするにはどうすればよいですか?
パッケージ1の関数を使用するとemacsがクラッシュする理由をデバッグしています。このデバッグプロセスの目的は、を使用して送信する有用なデータを取得することですM-x report-emacs-bug。 emacsのクラッシュをデバッグする方法についてのヘルプを得るために、Emacs Manual-CrashingおよびEmacs Manual-After a Crashを既に見てきましたが、彼らは助けませんでした。 Aクラッシュ後のマニュアルは、を意味しemacs-buffer.gdbますが、私はそれを使用する方法が分かりません。Googleに助けを求めている間に、このemacs.SEの質問に出会い、-ggdb3フラグを使用してemacsを再コンパイルしました。 私は以前に使用gdbした経験がないため、emacs-buffer.gbdファイルを使用しようとして失敗したことはほとんどありませんでした。 ここに私が試したものがあります: gdb -x /path/to/emacs-buffer.gdb gdb -> file /path/to/emacs-buffer.gdb gdb -> source /path/to/emacs-buffer.gdb source /path/to/emacs-buffer.gdb ちなみに、-ggdb3フラグ付きでコンパイルされたemacsのロードには約10秒かかります。以前は5〜6秒でしたが、現在は約16〜17秒です。私の初期化でそれを計算するコードのために、正確な秒を知っています。この起動時間の増加は予想されますか? 脚注1:undo-tree特定の.orgファイルの取り消し履歴を復元しようとすると、emacsは一貫してクラッシュします(これを公開することはできません)。持ってい(setq undo-tree-auto-save-history t)ます。このクラッシュはemacs git masterでのみ発生し、emacs 24.5では発生しません。emacs 24.5では、undo-tree(元に戻す履歴ファイルが存在する場合でも)元に戻す履歴を読み込めないことを示すエラーがスローされますが、少なくともそのバージョンではemacsセッションはクラッシュしません。