emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs crashes when I try to quit


From: Miguel Ruiz
Subject: Re: Emacs crashes when I try to quit
Date: Thu, 4 Apr 2013 20:30:26 +0200


> A DLL can never be statically linked.

I meant "every dependent compiled object included in the libgcc_s_dw2-1.dll is statically linked"

> If you want to be sure whether or not your executables depend on that
> DLL, use the "depends" tool, which you can download from the net --
> just run it as in "depends emacs.exe" and it will show a window with
> all the DLLs that the binary wants to load.  Or use objdump that you
> already have, like this:

 >  objdump -x emacs.exe | fgrep "DLL Name:"

Official emacs.exe, 2013-03-13 14:38, 9.031.038 bytes

objdump -x emacs.exe | fgrep "DLL Name:" yields

DLL Name: ADVAPI32.DLL
DLL Name: COMCTL32.DLL
DLL Name: COMDLG32.DLL
DLL Name: GDI32.dll
DLL Name: KERNEL32.dll
DLL Name: MPR.DLL
DLL Name: msvcrt.dll
DLL Name: OLE32.dll
DLL Name: SHELL32.DLL
DLL Name: USER32.dll
DLL Name: USP10.DLL
DLL Name: WINMM.DLL
DLL Name: WINSPOOL.DRV

So I asume there is no dependency on libgcc_s_dw2-1.dll.

I have always run emacs.exe with no libgcc_s_dw2-1.dll around.

Miguel.




2013/4/4 Eli Zaretskii <address@hidden>
> Date: Thu, 4 Apr 2013 07:45:59 +0200
> From: Miguel Ruiz <address@hidden>
>
> AFAIK,  libgcc_s_dw2-1.dll is statically linked so it is irrelevant the
> origin of the file.

A DLL can never be statically linked.

If you want to be sure whether or not your executables depend on that
DLL, use the "depends" tool, which you can download from the net --
just run it as in "depends emacs.exe" and it will show a window with
all the DLLs that the binary wants to load.  Or use objdump that you
already have, like this:

  objdump -x emacs.exe | fgrep "DLL Name:"

The latter only shows the names of the DLLs, not their absolute file
names.

> I have experienced the same crashes and I can confirm two things:
> - No crashes with gcc v3.x.x
> - No crashes with gcc v4.5 sjlj
>
> And this thread<http://sourceforge.net/mailarchive/message.php?msg_id=27481215>might
> confirm the last point.
>
> Now I am going to build with tdm-gcc-4.7.1-2
> <http://tdm-gcc.tdragon.net/download>MinGW
> sjlj <http://tdm-gcc.tdragon.net/download>, and test stability. If anyone
> would like to test my binaries, please, let me know: I will be pleased.

If the above methods show that your binary depends on
libgcc_s_dw2-1.dll, you _must_ tell your users which one of them is
actually linked into the binary.  The "depends" tool will show you a
full path to the DLL which the binary will use, and the linker links
against the DLL which came with the version of GCC you used to compile
Emacs.  You should tell the users "get libgcc_s_dw2-1.dll from GCC
version 4.x.y that you find on this-and-that site".

Thanks.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]