emacs 24.3 w systemie Windows 7 nie zamyka się poprawnie


8

Używam Emacsa 24.3 na komputerze z systemem Windows 7. Bez względu na to, jak zamknę edytor, czy Ctrl+ X, Ctrl+ C, czy menu, Emacs zawsze ulega awarii i pojawia się błąd „GNU Emacs: Rozszerzalny samodokumentujący edytor tekstu przestał działać” (zilustrowany poniżej). Czy ktoś jeszcze ma podobny błąd? Czy ktoś ma pojęcie, co może być przyczyną? FWIW, miałem również podobny błąd podczas używania Emacsa 23. Miałem wrażenie, że odejdzie w Emacs 24. Wygląda na to, że nie. Dołączyłem zrzut ekranu, który prowadzi do jego pełnowymiarowej wersji Emacs przestał działać .

Podaję tu również pełny komunikat o błędzie, aby dodatkowo pomóc w rozwiązywaniu problemów:

Problem signature:
  Problem Event Name:   APPCRASH
  Application Name: emacs.exe
  Application Version:  24.3.0.0
  Application Timestamp:    51461ed8
  Fault Module Name:    libgcc_s_dw2-1.dll
  Fault Module Version: 0.0.0.0
  Fault Module Timestamp:   4bc96cad
  Exception Code:   40000015
  Exception Offset: 00016646
  OS Version:   6.1.7601.2.1.0.768.3
  Locale ID:    2057
  Additional Information 1: 40aa
  Additional Information 2: 40aadffc5490879468da6327c52e8317
  Additional Information 3: 30a6
  Additional Information 4: 30a67832b564ca36083716f18a2a95ef

Czy możesz dołączyć resztę komunikatu o błędzie? Wygląda na to, że jest to problem z libgcc. Czy komunikat o błędzie zawiera „Ścieżkę do modułu powodującego błąd”?
terdon

1
@terdon, Oto reszta wiadomości:Problem signature: Problem Event Name: APPCRASH Application Name: emacs.exe Application Version: 24.3.0.0 Application Timestamp: 51461ed8 Fault Module Name: libgcc_s_dw2-1.dll Fault Module Version: 0.0.0.0 Fault Module Timestamp: 4bc96cad Exception Code: 40000015 Exception Offset: 00016646 OS Version: 6.1.7601.2.1.0.768.3 Locale ID: 2057 Additional Information 1: 40aa Additional Information 2: 40aadffc5490879468da6327c52e8317 Additional Information 3: 30a6 Additional Information 4: 30a67832b564ca36083716f18a2a95ef
Surio

@terdon, jak widać powyżej, w komunikacie o błędzie nie wystąpił błąd „błąd ścieżki modułu”. Ale do głównego pytania dołączyłem pełny komunikat o błędzie - jest tam wyraźniej sformatowany i czytelny niż tutaj. Przepraszam za to.
Surio,

1
Może masz ten sam problem jak ten facet: lists.gnu.org/archive/html/help-gnu-emacs/2012-12-12/msg00194.html
jjlin

@jjlin, Dziękujemy za komentowanie. Użyłem Walkera zależności i zdziwiłem się, gdy nie było absolutnie żadnej wzmianki o libgcc_s_dw2-1.dll. Ale na moim komputerze jest łącznie 16 plików libgcc_s_dw2-1.dll związanych z różnymi modułami FOSS. Próbowałem wkleić te biblioteki DLL z 3-4 różnych aplikacji, pojedynczo, w katalogu \ bin \ emacs.exe, ale nadal pojawia się ten sam błąd. W tym momencie przerwałem to ćwiczenie, ponieważ tak naprawdę nigdzie się nie wybiera. Mówiąc najprościej, walker zależności nie pokazuje libgcc_s_dw2-1.dll! Zaraz!
Surio,

Odpowiedzi:


4

Miałem ten problem.

Rozwiązałem to dla mojej konfiguracji, przekazując --no-splashopcję emacs przy uruchomieniu.

Nie dostaję teraz ekranu powitalnego, ale też nie zawieszam się przy wyjściu.


Jak wspomniałem wcześniej, dziękuję za zainteresowanie i udzielenie odpowiedzi. Co ciekawe, kiedy przeniosłem się z Win 7 Home Premium 32 bity na Win 7 Home Premium 64 bity, ta awaria zniknęła! [Dotknij drewna!] Mam nadzieję, że ostatni raz widzę ten błąd.
Surio

Nie działało dla mnie. Ponadto, w odniesieniu do komentarza @ Surio, jestem na Win 7 Home Premium 64 bit i otrzymuję ten błąd.
Jackson,

To rozwiązanie przestało działać, gdy przeniosłem się do Win 10. Musiałem naprawić libgcc_s_dw2-1.dll, jak opisano poniżej.
meta4

3

Właśnie miałem ten problem podczas konfigurowania nowego laptopa z systemem Windows 7. Sprawdzenie przeglądarki zdarzeń systemu Windows ujawniło, że winowajcą była wersja pliku Emacs libgcc_s_dw2-1.dll. Szybki skan mojego dysku C z Everything zaowocował nie mniej niż siedmioma wersjami biblioteki rozproszonymi między różnymi wersjami MinGW, które zainstalowałem wraz z innymi aplikacjami, RStudio, OSGeo4W, CodeBlocks itp. Kilka z nich wstrzyknęło się do mojego zmienna ścieżki systemowej.

Rozwiązaniem dla mnie było upewnienie się, że Emacs znalazł kompatybilną bibliotekę libgcc_s_dw2-1.dll lub w ogóle jej brak, ustawiając zmienną PATH przed uruchomieniem Emacsa. Z typu wiersza poleceń, set path=aby wyczyścić zmienną ścieżki przed uruchomieniem emacsa c:\<pathtoemacsbin>\runemacs.exe, zakładając, że nie będziesz potrzebować dostępu do innych plików. Alternatywnie, najnowsza wersja MinGW32 powinna być kompatybilna. Wystarczy upewnić się, że jest dostępny na ścieżce wyszukiwania set path=c:\MinGW32\bin.


2

Znalazłem tylko jedno wystąpienie libgcc_s_dw2-1.dll na moim komputerze, zainstalowane pod GNUplot.

Dowolnie zmieniłem nazwę, a teraz emacs działa dobrze. Oczywiście GNUplot nie, ale hej!


Znalazłem tylko jedno wystąpienie libgcc_s_dw2-1.dll na moim komputerze, zainstalowane pod GPS (GNAT Programming Studio) .. Odinstalowałem je, a teraz emacs działa dobrze. Oczywiście GPS nie, ale hej!
KIM Taegyoon

0

AFAIK, libgcc_s_dw2-1.dll jest statycznie połączony, więc nie ma znaczenia pochodzenie pliku.

Wystąpiły te same awarie i mogę potwierdzić dwie rzeczy:

  • Brak awarii w emacs 24.3 zbudowanym z gcc v3.xx

  • Brak awarii w emacs 24.3 zbudowanym z gcc v4.5 sjlj

I ten wątek

http://sourceforge.net/mailarchive/message.php?msg_id=27481215

może potwierdzić ostatni punkt.

HTH


Ciekawy punkt! Ze strony startowej emacsa „To jest GNU Emacs 24.3.1 (i386-mingw-nt6.1.7601) z dnia 18.03.2013 na MARVIN”. Brak wzmianki o wersji.
Surio

0

Nie mówisz, czy awarie zdarzają się, gdy zaczynasz bez pliku init ( ~/.emacs), tj emacs -Q. Przy użyciu . Jeśli tak, możesz rozważyć zgłoszenie błędu z powtarzalnym przepisem. Jeśli nie, podziel rekurencyjnie swój plik init, aż znajdziesz kod winowajcy.

emacs -Q to miejsce, od którego można zacząć: (a) podczas zgłaszania problemu i (b) podczas debugowania.


dziękuję za zainteresowanie i udzielenie odpowiedzi. Co ciekawe, kiedy przeniosłem się z Win 7 Home Premium 32 bity na Win 7 Home Premium 64 bity, ta awaria zniknęła! [Dotknij drewna!] Mam nadzieję, że ostatni raz widzę ten błąd.
Surio
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.