64-bit emacs crashes a lot

Ken Brown kbrown@cornell.edu
Fri Aug 16 02:00:00 GMT 2013


On 8/15/2013 8:58 PM, Ryan Johnson wrote:
> On 15/08/2013 7:07 PM, Ken Brown wrote:
>> On 8/15/2013 6:48 PM, Ryan Johnson wrote:
>>> On 15/08/2013 6:02 PM, Ken Brown wrote:
>>>> On 8/15/2013 5:58 PM, Ken Brown wrote:
>>>>> On 8/15/2013 5:24 PM, Ryan Johnson wrote:
>>>>>> On 15/08/2013 5:14 PM, Ken Brown wrote:
>>>>>>> On 8/15/2013 4:55 PM, Ryan Johnson wrote:
>>>>>>>> Program received signal SIGSEGV, Segmentation fault.
>>>>>>>> ___chkstk_ms () at
>>>>>>>> /usr/src/debug/gcc-4.8.1-1/libgcc/config/i386/cygwin.S:146
>>>>>>>
>>>>>>> You're not using the latest gcc, which is 4.8.1-3.  Any chance that
>>>>>>> that's your problem?
>>>>>> Heh. I actually do have the latest gcc, but somehow the upgrade
>>>>>> didn't
>>>>>> pick up the debug package (which showed as not installed in
>>>>>> setup.exe).
>>>>>> I have manually upgraded it now.
>>>>>
>>>>> OK.  But doesn't the above show that the crash is occurring in gcc,
>>>>> not
>>>>> emacs?
>>>>>
>>>>>> BTW, how do you compile emacs from the sources given? I tried
>>>>>> untarring
>>>>>> and patching, but I get the message:
>>>>>>> configure: error: Emacs hasn't been ported to
>>>>>>> `x86_64-unknown-cygwin'
>>>>>>> systems.
>>>>>>> Check `etc/MACHINES' for recognized configuration names.
>>>>>
>>>>> One of the patches changes configure.ac, so you have to run autoreconf
>>>>> after applying it.
>>>>
>>>> Or it might be 'autoreconf -I m4'.
>>>
>>> Something is still wrong:
>>>
>>> $ cd /scratch
>>> $ tar xaf /usr/src/emacs-24.3.tar.xz
>>> $ patch -p1 </usr/src/emacs-24.3-5.cygwin.patch
>>> patching file emacs-24.3/CYGWIN-PATCHES/emacs-X11.postinstall
>>> patching file emacs-24.3/CYGWIN-PATCHES/emacs-X11.preremove
>>> patching file emacs-24.3/CYGWIN-PATCHES/emacs-w32.postinstall
>>> patching file emacs-24.3/CYGWIN-PATCHES/emacs-w32.preremove
>>> patching file emacs-24.3/CYGWIN-PATCHES/emacs.postinstall
>>> patching file emacs-24.3/CYGWIN-PATCHES/emacs.preremove
>>> $ cd emacs-24.3
>>> $ autoreconf -I m4
>>> $ ./configure CFLAGS='-g -0g -fsanitize=address'
>>> LDFLAGS='-fsanitize=address' --without-all
>>> checking for a BSD-compatible install... /usr/bin/install -c
>>> checking whether build environment is sane... yes
>>> checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
>>> checking for gawk... gawk
>>> checking whether make sets $(MAKE)... yes
>>> checking build system type... x86_64-unknown-cygwin
>>> checking host system type... x86_64-unknown-cygwin
>>> configure: error: Emacs hasn't been ported to `x86_64-unknown-cygwin'
>>> systems.
>>> Check `etc/MACHINES' for recognized configuration names.
>>>
>>> In particular, it doesn't look like the patch actually patches any emacs
>>> files at all... do I need to pull all past versions of the source
>>> package as well or something?
>>
>> The source package for emacs-24.3-5 contains lots of patches that you
>> didn't apply:
>>
>>     nox_mouse.patch
>>     w32_encoding.patch
>>     configure.ac.patch
>>     syms_of_cygw32.patch
>>     image_background.patch
>>     w32term.w32_init.patch
>>     unexcw.patch
>>     memory_warnings.patch
>>     24.3-4_nt_icon.patch
>>     nonbootstrap_static_heap.patch
>>     24.3_memalign.patch
> I see... that would explain it.
>
> For future reference, though, how does one go about discovering which
> patches to apply? Most of those file names don't associate them with
> emacs in any obvious way, and `cygcheck -f' claims that none of them
> belong to any package... do you have to go dig up the source package's
> package file and look inside?

Take a look at emacs.cygport.  It shows you exactly how the package was 
built, including patches.

Ken


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list