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)?


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]