Boost logo

Boost Users :

Subject: Re: [Boost-users] [Context] Building 32-bit Context?
From: Nat Linden (nat_at_[hidden])
Date: 2012-09-20 16:23:14


On Thu, Sep 20, 2012 at 3:06 PM, Oliver Kowalke <oliver.kowalke_at_[hidden]> wrote:

> Am 20.09.2012 20:56, schrieb Nat Linden:

>> Now we would like to introduce Boost.Context. However,
>> address-model=32 --with-context causes the Boost build to break on Mac
>> OS X.

> I think address-model=32 is not necessary: bjam toolset=<> should work

In our case, toolset=darwin, yes.

However, on a 64-bit Mac, this only builds address-model-64.

When I pass address-model=32, I get:

libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:70:suffix or
operands invalid for `jmp'
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:82:suffix or
operands invalid for `push'
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:83:suffix or
operands invalid for `push'
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:84:suffix or
operands invalid for `push'
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:86:suffix or
operands invalid for `pop'
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:87:Missing operand
value assumed absolute 0.
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:87:junk `[.-1b]'
after expression
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:88:junk `@PLT'
after expression
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:90:suffix or
operands invalid for `pop'
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:91:suffix or
operands invalid for `pop'
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:92:suffix or
operands invalid for `pop'
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:101:suffix or
operands invalid for `pop'
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:112:suffix or
operands invalid for `pop'
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:113:Missing
operand value assumed absolute 0.
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:113:junk `[.-3b]'
after expression
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:116:suffix or
operands invalid for `push'
libs/context/src/asm/fcontext_i386_sysv_macho_gas.S:117:junk `@PLT'
after expression

I need to build a 32-bit Context library even on a 64-bit build
machine. Is this possible?

> should work on Mac OS X - take a look at
> http://www.boost.org/development/tests/release/developer/context.html
> tests are OK

None of them seem to specify address-model, so presumably they're
defaulting to the current architecture. I don't know if they're
running on 32-bit or 64-bit machines.


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net