Subject: Re: [Boost-build] Building Boost on OSX
From: Marshall Clow (mclow.lists_at_[hidden])
Date: 2013-08-20 15:05:44
On Aug 20, 2013, at 10:28 AM, Bioxydyn Dev <bioxydyn.dev_at_[hidden]> wrote:
> On Tue, Aug 20, 2013 at 4:17 PM, Marshall Clow <mclow.lists_at_[hidden]> wrote:
> On Aug 19, 2013, at 11:58 PM, Bioxydyn Dev <bioxydyn.dev_at_[hidden]> wrote:
>> On Tue, Aug 20, 2013 at 7:34 AM, Bioxydyn Dev <bioxydyn.dev_at_[hidden]> wrote:
>> On Mon, Aug 19, 2013 at 4:57 PM, Steven Watanabe <watanabesj_at_[hidden]> wrote:
>> On 08/19/2013 08:19 AM, Bioxydyn Dev wrote:
>> > I'm trying to build boost 1.54 on OSX 10.8.4. I'm a newbie at building on
>> > OSX and also at building custom boost binaries.
>> > I followed the instructions at
>> > http://www.boost.org/doc/libs/1_54_0/more/getting_started/unix-variants.htmlup
>> > to and including section 4. I then installed boost build as described
>> > in
>> > section 5.2.1.
>> > To keep things simple I thought I'd just build the thread library for now
>> > as follows:
>> > /usr/local/bin/boost-build/bin/b2 install
>> > --prefix=~/development/cots/boost/ --build-dir=/tmp/build-boost stage
>> > --with-thread toolset=gcc-4.5 variant=debug --layout=versioned
>> > --build-type=complete -q
>> use toolset=darwin, not toolset=gcc.
>> Please explain. Why would I do that when I've installed gcc separately and not using what came installed on the machine?
>> From the boost build documentation:
>> Apple Darwin gcc
>> The darwin module supports the version of gcc that is modified and provided by Apple. The configuration is essentially identical to that of the gcc module.
>> The darwin toolset can generate so called "fat" binariesbinaries that can run support more than one architecture, or address mode. To build a binary that can run both on Intel and PowerPC processors, specify architecture=combined. To build a binary that can run both in 32-bit and 64-bit modes, specify address-model=32_64. If you specify both of those properties, a "4-way" fat binary will be generated.
>> I've installed gcc separately. I'm not using Apple's modified version.
> But I suspect that you _are_ using Apple's linker (ld), and it does not understand -h.
> Why do you suspect that Apple's linker is being invoked?
Because it doesn't understand -h?
> And why would it not invoke GCC's linker when I've specified the toolset=gcc?
because they're both (helpfully) named "ld" ?
and because if you just download and build gcc, I believe that you don't get a standalone linker.
[ At least I didn't when building gcc 4.7.2 and 4.8 ]
Marshall Clow Idio Software <mailto:mclow.lists_at_[hidden]>
A.D. 1517: Martin Luther nails his 95 Theses to the church door and is promptly moderated down to (-1, Flamebait).
-- Yu Suzuki
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk