Subject: Re: bug#19372: Compile Failure on OS X 10.10 (Yosemite)

From: John Ralls <[email-masked]>
Date: Wed, 22 Jun 2016 13:58:55 -0700

> On Jun 22, 2016, at 12:25 PM, Andy Wingo <[email-masked]> wrote:
> 
> Hi John,
> 
> Did you find out what was the deal here?  A very strange error!

Andy,

Strange indeed. No, I don't think that I did. Apple came out with a new version of Xcode and IIRC the problem went away on its own. It's been over a year now, though, so my memory of it is a bit fuzzy, but it's not a problem now.

Regards,
John Ralls

> Andy
> 
> On Sat 13 Dec 2014 20:28, John Ralls <[email-masked]> writes:
> 
>> Attempting to build Guile 2.0.11 on OS X 10.10 with Xcode 6.1.1 and MacOS10.10.sdk fails:
>>> /bin/sh: line 1: 53480 Segmentation fault: 11 GUILE_INSTALL_LOCALE=1
>>> GUILE_AUTO_COMPILE=0 ../meta/uninstalled-env guild compile
>>> --target="x86_64-apple-darwin14.0.0" -Wunbound-variable
>>> -Warity-mismatch -Wformat -L
>>> "/Users/john/Development/Gnucash-Build/Gnucash-master-git-64/src/guile-2.0.11/module"
>>> -L
>>> "/Users/john/Development/Gnucash-Build/Gnucash-master-git-64/src/guile-2.0.11/module"
>>> -L
>>> "/Users/john/Development/Gnucash-Build/Gnucash-master-git-64/src/guile-2.0.11/guile-readline"
>>> -o "srfi/srfi-27.go" "srfi/srfi-27.scm"
>>> make[2]: *** [srfi/srfi-27.go] Error 139
>>> make[2]: *** Waiting for unfinished jobs....
>>> wrote `srfi/srfi-35.go'
>>> wrote `srfi/srfi-37.go'
>>> /bin/sh: line 1: 53393 Segmentation fault: 11 GUILE_INSTALL_LOCALE=1
>>> GUILE_AUTO_COMPILE=0 ../meta/uninstalled-env guild compile
>>> --target="x86_64-apple-darwin14.0.0" -Wunbound-variable
>>> -Warity-mismatch -Wformat -L
>>> "/Users/john/Development/Gnucash-Build/Gnucash-master-git-64/src/guile-2.0.11/module"
>>> -L
>>> "/Users/john/Development/Gnucash-Build/Gnucash-master-git-64/src/guile-2.0.11/module"
>>> -L
>>> "/Users/john/Development/Gnucash-Build/Gnucash-master-git-64/src/guile-2.0.11/guile-readline"
>>> -o "srfi/srfi-19.go" "srfi/srfi-19.scm”
>> 
>> It succeeds with MacOSX10.9.sdk.
>> 
>> The crash reports:
>> 
>>> Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
>>> Exception Codes:       EXC_I386_GPFLT
>>> 
>>> Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
>>> 0   libdyld.dylib                 	0x00007fff91d46432 stack_not_16_byte_aligned_error + 0
>>> 
>>> Thread 0 crashed with X86 Thread State (64-bit):
>>>  rax: 0x0280000000000000  rbx: 0x0000000000000001  rcx: 0x00000000ffffffc6  rdx: 0x00007fff5dcb88a0
>>>  rdi: 0xa000000000000000  rsi: 0x00007fff5dcb88a0  rbp: 0x0000000000000000  rsp: 0x00007fff5dcb8728
>>>   r8: 0xa000000000000000   r9: 0x00007fde73000010  r10: 0x00000000000024f8  r11: 0x000000010231d118
>>>  r12: 0x0000000000000000  r13: 0x0000000000000001  r14: 0x0000000000000001  r15: 0x00007fde73000000
>>>  rip: 0x00007fff91d46432  rfl: 0x0000000000010202  cr2: 0x00000001022e78c0
>>> 
>>> Logical CPU:     2
>>> Error Code:      0x00000000
>>> Trap Number:     13
>> 
>> and:
>> 
>>> Crashed Thread:        0  Dispatch queue: com.apple.main-thread
>>> 
>>> Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
>>> Exception Codes:       EXC_I386_GPFLT
>>> 
>>> Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
>>> 0   libdyld.dylib                 	0x00007fff91d46432 stack_not_16_byte_aligned_error + 0
>>> 
>>> Thread 0 crashed with X86 Thread State (64-bit):
>>>  rax: 0x02625a0000000000  rbx: 0x0000000000000001  rcx: 0x00000000ffffffc6  rdx: 0x00007fff566d68a0
>>>  rdi: 0x9896800000000000  rsi: 0x00007fff566d68a0  rbp: 0x0000000000000000  rsp: 0x00007fff566d6728
>>>   r8: 0x9896800000000000   r9: 0x00007fa899d00190  r10: 0x00000000000024f8  r11: 0x00000001098f9118
>>>  r12: 0x0000000000000000  r13: 0x0000000000000001  r14: 0x0000000000000001  r15: 0x00007fa899d00180
>>>  rip: 0x00007fff91d46432  rfl: 0x0000000000010202  cr2: 0x00000001098c38c0
>>> 
>>> Logical CPU:     8
>>> Error Code:      0x00000000
>>> Trap Number:     13
>> 
>> Debugging with gdb shows a smashed stack after the segfault, so the stack_not_16_byte_aligned_error is probably spurious.
>> 
>> Regards,
>> John Ralls