[Vm-dev] Re: Error compiling cog for MacOS 10.6

Mariano Martinez Peck marianopeck at gmail.com
Fri Jul 30 20:44:47 UTC 2010


On Fri, Jul 30, 2010 at 10:27 PM, Casey Ransberger <casey.obrien.r at gmail.com
> wrote:

>
> Nope; that's probably the difference then. I used the makevm script in the
> macbuild directory.
>

Exactly. That works perfect for me also. Even using the default XCode
configuration. It only fails when I explictly choose the option "Mac OS X
10.6"  in XCode



>
> On Jul 30, 2010, at 12:27 PM, Mariano Martinez Peck <marianopeck at gmail.com>
> wrote:
>
> Version 3.2.2
> 64-bit
>
> Component versions
> Xcode IDE: 1650.0
> Xcode Core: 1648.0
>
> In addition, GCC
>
> ;-) gcc --version
> i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5659)
> Copyright (C) 2007 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>
> Did you try setting the option "Mac OS X 10.6"  in XCode ?
>
> Thanks
>
> Mariano
>
>
> On Fri, Jul 30, 2010 at 9:22 PM, Casey Ransberger <<casey.obrien.r at gmail.com>
> casey.obrien.r at gmail.com> wrote:
>
>>
>> Hmm. I didn't have any trouble compiling Cog on 10.6. Which Xcode version
>> are you using?
>>
>> On Jul 30, 2010, at 11:57 AM, Eliot Miranda < <eliot.miranda at gmail.com>
>> eliot.miranda at gmail.com> wrote:
>>
>>
>>
>> On Fri, Jul 30, 2010 at 6:29 AM, Mariano Martinez Peck <<marianopeck at gmail.com><marianopeck at gmail.com>
>> marianopeck at gmail.com> wrote:
>>
>>>
>>> sorry....quick send...try again:
>>> Hi Eliot. I am trying to compie CogVM from XCode. If I choose "Mac OS X
>>> 10.5 (Base SDK)" CogVM compiles without problem.
>>>
>>> But if I choose "Mac OS X 10.6" I have a compile error in ucontext.h line
>>> 42:
>>>
>>> #error ucontext routines are deprecated, and require _XOPEN_SOURCE to be
>>> define
>>>
>>> It comes from sqUnixVMProfile.x where you have:
>>>
>>> #include <ucontext.h>
>>>
>>>
>>> any ideas how can I fix this?
>>>
>>
>> I guess three ways.  One is simply to define _XOPEN_SOURCE.  But better is
>> to figure out how to get the program counter pointer value from a signal
>> handler in 10.6.  i.e. what the profiler does is periodically sample the VM
>> thread's program counter.  It does this using a thread that sends SIGPROF to
>> the VM thread and have the SIGPROF handler (pcbufferSIGPROFhandler) get the
>> interrupted pc from the ucontext structure passed into the signal handler.
>>  Presumably there's a new way of doing this in 10.6.  Find out what that is.
>>
>> The third way is simply to define NO_VM_PROFILE and then the file will
>> provide only stubs and you'll have no functional VM profiler.
>>
>> HTH
>> Eliot
>>
>>
>>
>>> Thanks!
>>>
>>> Mariano
>>>
>>>
>>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20100730/9aa75b93/attachment.htm


More information about the Vm-dev mailing list