Looks like I was wrong about the version number for the fix. We build our own 64bit binaries and the guy who did our build
went looking for the 4.0.4.4 sources and saw this change in the git repo:
mono/mono/mini/mini-amd64.c: https://github.com/mono/mono/commit/061f993b6878585a75fbb4de39b89bf3b4aca348
"Add support for version of pthread_getspecific when launching from Xcode with LLDB attached."
That seems to be the key change, and we just grafted that change into our older 4.0.2.X sources.
Thanks to Jonathan, below, for pointing out that 4.0.4.4 likely did not contain this fix.
Sorry for the confusion,
DaveB
Message:
5
Date:
Thu, 05 Nov 2015 17:03:46 +0000
From:
Jonathan Mitchell <email@hidden>
To:
"email@hidden"
<email@hidden>
Subject:
Re: Crash running C code built on OS X El Capitan in Xcode 7
Message-ID:
<email@hidden" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""> email@hidden>
Content-Type:
text/plain; charset=utf-8
I
concur with these reports.
lldb
works fine on its own.
I
believe xcode is the perhaps unwitting culprit.
See
this commit https://github.com/mono/mono/commit/3adcd34f783a870cc07ab8d9c3b2782328b0938f
I
would be lying if I said I fully understood what is happening here.
The
code seems to be looking for a specific set of of assembler instructions for pthread_getspecific (thread local storage getter).
From this it pulls out an offset which it uses when jitting IL thread local storage access, I think!
Xcode
it seems monkeys with pthread_getspecific (why, anyone?) and Mono fails.
I
patched my own 4.0.0 branch of Mono with this commit and things looking promising,
I
will probably try and get this commit pulled into the 4.0 and 4.3 branches.
It
has been committed not master but that is a bit bleeding edge.
What
really, really, really threw me on this was that my bundle unit test code always worked under Xcode 7.
Yet
my application code always failed.
So
perhaps Xcode doesn’t always do the switcheroo on pthread_getspecific.
J
On 3 Nov 2015, at 22:32, Dave Burnard <email@hidden> wrote:
We see a similar crash in our app in mono-runtime initialization when trying to debug on El Cap.
In our scenario it crashes launching the app under Xcode 6.X and Xcode 7, but the app runs fine from the Finder, command line, or under lldb.
I posted about this on the email@hidden list and a few others appear to be seeing this as well, but no
remedy has been suggested.
Dave Burnard
Message: 2
Date: Tue, 03 Nov 2015 11:43:32 +0000
From: Sak Wathanasin <email@hidden>
To: email@hidden
Subject: Re: Crash running C code built on OS X El Capitan in Xcode 7
Message-ID:
<email@hidden" class="">email@hidden>
Content-Type: text/plain; charset=iso-8859-1
On Mon, November 2, 2015 17:24, Jens Alfke wrote:
If you do keep troubleshooting on your own, what I would try next is starting an lldb session from
a shell and running your program in it. That will isolate whether it's something to do with
Xcode itself.
I'm seeing this crash in the mono runtime as well and I can confirm that it runs fine in lldb when
invoked from the command line but not when invoked from Xcode (7.0, 7.1; works in 6.4). When I was
trying to get our app EC-ready I had to resort to using lldb directly and the good old print
statements inserted into the code.
--
Sak Wathanasin
Network Analysis Limited http://www.network-analysis.ltd.uk
3 Edison Buildings, Electric Wharf, Coventry CV1 4JA, UK
Registered in England No: 2407211
Phone: (+44) 24 7655 12 20 Mobile: (+44) 79 70 75 19 12
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
|