Boost logo

Boost-Build :

Subject: Re: [Boost-build] Difference between toolset=darwin-4.5 & toolset=gcc-4.5 when building boost on OSX
From: Ian Emmons (ian_at_[hidden])
Date: 2013-08-20 09:58:12


Joe,

On Aug 20, 2013, at 9:49 AM, Bioxydyn Dev <bioxydyn.dev_at_[hidden]> wrote:
> What is the difference between toolset=darwin-4.5 & toolset=gcc-4.5 when building boost?
>
> I'm trying to build boost 1.54 on OSX 10.8.4.
>
> I have installed gcc-4.5 via Homebrew.
>
> When I select the toolset=darwin-4.5 to build the thread library for example, the build produces the following:
>
> libboost_system-xgcc45-mt-d-1_54.dylib
> libboost_thread-xgcc45-mt-d-1_54.dylib
> libboost_system-xgcc45-mt-d-1_54.a
> libboost_system-xgcc45-mt-sd-1_54.a
> libboost_thread-xgcc45-mt-d-1_54.a
> libboost_thread-xgcc45-mt-sd-1_54.a
>
> However, when I select the gcc option the dylib files are not built. An error occurs as posted here http://boost.2283326.n4.nabble.com/Building-Boost-on-OSX-tt4650856.html
>
> In particular, when I select the darwin toolset, how can I be sure that the build has indeed used gcc-4.5 rather than the preinstalled apple version of gcc-4.2 that came with the mac.
>
> Hopelessly confused. Please help.

I'm afraid that I can't directly answer your question, but one question about your issues looms large: Why are you installing your own GCC?

One possible answer is that you simply want a newer compiler. If that is indeed your situation, you should try "toolset=clang", which is Apple's newest and best compiler. (The darwin toolset, based on GCC 4.2 is currently maintained by Apple only for backwards compatibility.) Clang is, in my experience, an outstanding compiler and it has some of the most up-to-date support for C++11 available anywhere.

If your reason for using GCC 4.5 is something else, then I'm afraid you'll need help from some of the Boost.Build gurus themselves.

-Ian


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