Neden bir paket 1 bir işlev kullanırken emacs çöküyor hata ayıklama . Bu hata ayıklama işleminin amacı, kullanarak göndermek için yararlı veriler elde etmektir M-x report-emacs-bug.
Emacs çökmelerinde hata ayıklama konusunda yardım almak için Emacs Manual - Crashing and Emacs Manual - Bir Crash'den sonra baktım , ancak yardım etmediler.
Sonra bir kilitlenme manuel ifade eder emacs-buffer.gdbama bunu nasıl kullanılacağını bilmiyorsunuz. Google'dan yardım isterken, bu emacs.SE sorusuna rastladım ve emacs'ı-ggdb3 bayrakları kullanarak yeniden derledim .
Kullanmak için önceden bir deneyimim yok gdbve bu yüzden emacs-buffer.gbddosyayı kullanmak için birkaç başarısız denemeyi denedim .
İşte denedim:
gdb -x /path/to/emacs-buffer.gdbgdb->file /path/to/emacs-buffer.gdbgdb->source /path/to/emacs-buffer.gdbsource /path/to/emacs-buffer.gdb
Yan notta, -ggdb3bayrakla derlenen emac'lerin yüklenmesi yaklaşık 10 saniye daha uzun sürer; daha önce 5-6 saniye, şimdi yaklaşık 16-17 saniye idi. Benim init içinde hesaplayan bir kod nedeniyle kesin saniye biliyorum. Başlangıç zamanında bu artış bekleniyor mu?
Dipnot 1: undo-treebelirli bir .org dosyası için geri alma geçmişini geri yüklemeye çalıştığında emacs sürekli olarak kilitleniyor (bu da herkese açık olarak paylaşamıyorum). Bende var (setq undo-tree-auto-save-history t). Bu çökme emacs 24.5'te değil, sadece emacs git master'da gerçekleşir. Emacs 24.5'te, undo-treegeri alma geçmişini yükleyemediğini (geri alma geçmişi dosyası olsa bile) belirten bir hata atar, ancak en azından emacs oturumu bu sürümde çökmez.
undue-treesorunlar nedeniyle önemli olduğunu anlıyorum , ancak daha geniş bir potansiyele sahip .
undo-treecevap beklemiyordum, çünkü başkalarının kesin çöküşü yeniden yaratmasının zor olacağını biliyorum. Ayrıca bu çökmeye neden gibi görünen tek olan tüm org dosyasını paylaşamıyorum. Bu yüzden gdbbu soruya sadece etiketi uyguladım . Bu arka hikayeyi verdim, böylece cevaplar bana genel olarak bir emacs çökmesini nasıl ayıklayacağımı yönlendirebilir, böylece yararlı bir emacs hata raporu gönderebilirim .