Boost logo

Boost :

Subject: Re: [boost] [context] doesn't build on 32-bit osx
From: Luke Elliott (lukester_null_at_[hidden])
Date: 2012-08-08 07:06:20


On 08/08/2012 12:02, Luke Elliott wrote:
> On 07/08/2012 14:04, Oliver Kowalke wrote:
>> Am 07.08.2012 14:02, schrieb Luke Elliott:
>>> Hello Oliver
>>>
>>> There's actually already a ticket on this
>>> (https://svn.boost.org/trac/boost/ticket/7110 not from me) but since
>>> it's unassigned I thought I'd post here with a few more details.
>>
>> Hi Luke,
>>
>> could you try the appended asm - it might fail by computing the absolute
>> address of label finish.
>>
>> Oliver
>>
>
> No joy I'm afraid:
>
> as -o
> "../../../bin.v2/libs/context/build/darwin-4.2.1/debug/address-model-32/architecture-x86/asm/fcontext_i386_sysv_macho_gas.o"
> "../../../libs/context/src/asm/fcontext_i386_sysv_macho_gas.S" -arch i686
> ../../../libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:98:bad
> register name `%eip)'
>
> Apparently reading eip in 32-bit mode is a no-go?
>
> From some googling, I tried:
>
> call _get_eip
> leal finish(%eip), %ecx

Whoops... leal finish(%ecx), %ecx

>
> with
>
> _get_eip:
> mov (%esp), %ecx
> ret
>
>
> Which assembles. But at link time:
>
> ld: illegal text-relocation to finish in
> ../../../bin.v2/libs/context/build/darwin-4.2.1/debug/address-model-32/architecture-x86/asm/fcontext_i386_sysv_macho_gas.o
> from _make_fcontext in
> ../../../bin.v2/libs/context/build/darwin-4.2.1/debug/address-model-32/architecture-x86/asm/fcontext_i386_sysv_macho_gas.o
> for architecture i386
>
> HTH!
>
> Luke.
>
>
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
>


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk