emacs 24.3 su Windows 7 non si chiude correttamente


8

Sto eseguendo Emacs 24.3 su una macchina Windows 7. Indipendentemente da come chiudo l'editor, sia che si tratti di Ctrl+ X, Ctrl+ Co del menu, Emacs si arresta sempre in modo anomalo e viene visualizzato l'errore "GNU Emacs: l'editor di testo auto-documentabile estensibile ha smesso di funzionare" (illustrato di seguito). Qualcun altro ha un errore simile? Qualcuno ha un'idea di cosa potrebbe causare questo? FWIW, ho riscontrato un errore simile anche durante l'utilizzo di Emacs 23. Avevo l'impressione che questo sarebbe scomparso in Emacs 24. Sembra di no. Ho allegato uno screenshot, che collega a una versione full-size di se stesso Emacs ha smesso di funzionare .

Sto anche includendo il messaggio di errore completo qui, per aiutare ulteriormente la risoluzione dei problemi:

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

Potresti includere il resto del messaggio di errore? Sembra essere un problema con libgcc. Il messaggio di errore fornisce un "Percorso del modulo di errore"?
terdon,

1
@terdon, ecco il resto del messaggio: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, come puoi vedere sopra non c'era nessun errore "percorso modulo errato" nel messaggio di errore. Ma ho allegato il messaggio di errore completo alla domanda principale: è più chiaramente formattato e leggibile lì rispetto a qui. Mi dispiace per questo.
Surio,

1
Forse avete lo stesso problema di questo ragazzo: lists.gnu.org/archive/html/help-gnu-emacs/2012-12/msg00194.html
jjlin

@jjlin, grazie per aver commentato. Ho usato il walker delle dipendenze e sono rimasto sorpreso di scoprire che non c'era assolutamente alcuna menzione di libgcc_s_dw2-1.dll. Ma ci sono 16 file libgcc_s_dw2-1.dll in totale sulla mia macchina relativi a vari moduli FOSS. Ho provato a incollare queste DLL da 3-4 diverse applicazioni, una alla volta, nella directory \ bin \ emacs.exe, ma ho ancora lo stesso errore. Ho interrotto questo esercizio a questo punto in quanto in realtà non sta andando da nessuna parte. In poche parole, walker delle dipendenze non mostra libgcc_s_dw2-1.dll! Whoa!
Surio,

Risposte:


4

Stavo avendo questo problema.

L'ho risolto per la mia configurazione passando l' --no-splashopzione a emacs all'avvio.

Non ho una schermata iniziale adesso, ma non mi arresto neanche all'uscita.


Come ho già detto a un altro in precedenza, grazie per l'interesse e la risposta. La cosa interessante è che quando sono passato da Win 7 Home Premium a 32 bit a Win 7 Home Premium a 64 bit, questo arresto è andato via! [Tocca il legno!] Spero che questa sia l'ultima volta che vedo questo errore.
Surio,

Non ha funzionato per me. Inoltre, rispetto al commento di @ Surio, sono su Win 7 Home Premium a 64 bit e visualizzo questo errore.
Jackson,

Questa soluzione ha smesso di funzionare quando sono passato a Win 10. Ho dovuto riparare libgcc_s_dw2-1.dll come descritto di seguito.
meta4,

3

Ho appena avuto questo problema durante l'installazione di un nuovo laptop Windows 7. Il controllo del Visualizzatore eventi di Windows ha rivelato che la versione di Emacs libgcc_s_dw2-1.dll era il colpevole. Una rapida scansione del mio disco C con Tutto ha portato a non meno di sette versioni della libreria sparse tra le varie versioni di MinGW che avevo installato insieme ad altre app, RStudio, OSGeo4W, CodeBlocks, ecc. Un paio delle quali si erano iniettate nel mio variabile del percorso di sistema.

La soluzione per me era assicurarsi che Emacs trovasse un libgcc_s_dw2-1.dll compatibile o nessuno impostando la variabile PATH prima di avviare Emacs. Da un tipo di riga di comando set path=per cancellare la variabile path prima di avviare emacs c:\<pathtoemacsbin>\runemacs.exe, supponendo che non occorrerà accedere al percorso ad altri file. In alternativa, una versione recente di MinGW32 dovrebbe essere compatibile. Basta assicurarsi che sia disponibile nel percorso di ricerca, set path=c:\MinGW32\bin.


2

Ho trovato solo un'istanza di libgcc_s_dw2-1.dll sulla mia macchina, installata sotto GNUplot.

L'ho rinominato arbitrariamente e ora emacs funziona bene. Certo, GNUplot no, ma ehi!


Ho trovato solo un'istanza di libgcc_s_dw2-1.dll sul mio computer, installato sotto GPS (GNAT Programming Studio) .. L'ho disinstallato e ora emacs funziona bene. Certo, il GPS no, ma hey!
KIM Taegyoon,

0

AFAIK, libgcc_s_dw2-1.dll è staticamente collegato, quindi è irrilevante l'origine del file.

Ho riscontrato gli stessi arresti anomali e posso confermare due cose:

  • Nessun crash in emacs 24.3 creato con gcc v3.xx

  • Nessun arresto anomalo in emacs 24.3 creato con gcc v4.5 sjlj

E questa discussione

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

potrebbe confermare l'ultimo punto.

HTH


Punto interessante! Dalla pagina di avvio di emacs "Questo è GNU Emacs 24.3.1 (i386-mingw-nt6.1.7601) del 18-03-2013 su MARVIN". Nessuna menzione della versione.
Surio,

0

Non si dice se gli arresti anomali si verificano quando si avvia senza un file init ( ~/.emacs), ovvero utilizzando emacs -Q. In tal caso, potresti considerare di presentare una segnalazione di bug con una ricetta riproducibile. In caso contrario, dividere in due in modo ricorsivo il file init fino a trovare il codice colpevole.

emacs -Q è il punto di partenza: (a) quando si segnala un problema e (b) durante il debug.


grazie per l'interesse e la risposta. La cosa interessante è che quando sono passato da Win 7 Home Premium a 32 bit a Win 7 Home Premium a 64 bit, questo arresto è andato via! [Tocca il legno!] Spero che questa sia l'ultima volta che vedo questo errore.
Surio,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.