This is the mail archive of the libffi-discuss@sourceware.org mailing list for the libffi project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: "closures" not working on OS X 10.8 (Mountain Lion)?


So it looks like there's a problem with the ./configure script on
Mountain Lion now, such that it doesn't properly define
FFI_MMAP_EXEC_WRIT.

It seems that 236c9391321f83ad40daf03f40c35c9ebc1da6b3 is inadequate,
and once I applied the Mozilla patch that Bobby linked to above then
things worked as expected:
https://github.com/rbranson/node-ffi/commit/c1c5ad02a0e03d1727824d9d6f99a9ff6f976be1

Just thought I'd let you know of my findings, cheers!

On Wed, Sep 12, 2012 at 5:50 PM, Nathan Rajlich <nathan@tootallnate.net> wrote:
> So does anybody else have any suggestions for diagnosing this? Things
> work fine on Leopard, Snow Leopard, and Lion, just not Mountain Lion.
> I'm stumped as for a way to make any progress here.
>
> On Tue, Aug 14, 2012 at 10:23 PM, Nathan Rajlich <nathan@tootallnate.net> wrote:
>> Bobby, I believe that that patch has indeed been merged upstream in
>> https://github.com/atgreen/libffi/commit/236c9391321f83ad40daf03f40c35c9ebc1da6b3.
>> So I guess it's not that.
>>
>> Reini, that sounded like a good idea to me but it doesn't seem to
>> change anything for me. This is what I did:
>>
>>   $ cd libffi   # still the v3.0.11 tag
>>   $ CFLAGS="-Xlinker -no_pie" CXXFLAGS="-Xlinker -no_pie"
>> LDFLAGS="-no_pie" ./configure --enable-static --disable-shared
>> --disable-builddir --with-pic
>>   $ CFLAGS="-Xlinker -no_pie" CXXFLAGS="-Xlinker -no_pie" LDFLAGS="-no_pie" make
>>   $ gcc -o closure-test closure.c .libs/libffi.a -Iinclude -Xlinker -no_pie
>>   $ ./closure-test
>>   Bus error: 10
>>
>> Andrew, well shucks :)
>>
>> Anybody else have any ideas?
>>
>> On Tue, Aug 14, 2012 at 8:18 AM, Reini Urban <rurban@x-ray.at> wrote:
>>> On Tue, Aug 14, 2012 at 9:40 AM, Andrew Haley <aph@redhat.com> wrote:
>>>> On 08/13/2012 07:28 PM, Nathan Rajlich wrote:
>>>>> It seems to me that closures are no longer working on OS X v10.8
>>>>> (a.k.a. Mountain Lion). I first noticed this when the node-ffi test
>>>>> suite started failing with a "Bus Error", so just now I ran a simple
>>>>> closure example from the internet and encounter the same error when I
>>>>> try to run that. Note that this is using the libffi v3.0.11 tag. My
>>>>> test case and shell session are outlined in this gist here:
>>>>> https://gist.github.com/3342783.
>>>>>
>>>>> I don't personally know what's going on here, but am hoping somebody
>>>>> on this list will. I can provide any more additional information
>>>>> necessary. Cheers and thanks in advance!
>>>>
>>>> This is probably because of heap execute protection.  Unfortunately I
>>>> don't know how it works on OS X: you need an Apple export.
>>>
>>> --no_pie is needed.
>>>
>>> See also http://code.google.com/p/address-sanitizer/issues/detail?id=29
>>> how to disable ASLR with various MacOSX versions:
>>> e.g. export DYLD_NO_PIE=1 on 10.6
>>> link with --no_pie since 10.7
>>> --
>>> Reini Urban
>>> http://cpanel.net/   http://www.perl-compiler.org/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]