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.gdb
ama 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 gdb
ve bu yüzden emacs-buffer.gbd
dosyayı kullanmak için birkaç başarısız denemeyi denedim .
İşte denedim:
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
Yan notta, -ggdb3
bayrakla 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-tree
belirli 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-tree
geri 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-tree
sorunlar nedeniyle önemli olduğunu anlıyorum , ancak daha geniş bir potansiyele sahip .
undo-tree
cevap 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 gdb
bu 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 .