Boost logo

Boost :

From: Mat Marcus (mat-lists_at_[hidden])
Date: 2008-04-15 03:52:05


On Tue, Apr 15, 2008 at 12:06 AM, Dirk Griffioen <dirk_at_[hidden]> wrote:
> Hi All,
>
> If I check the supported compilers page, gcc on darwin is supported -
> but I get the following error (boost_1_34_1/boost_1_35_0)
> *
> *The utf conversion in boost.program_options, for example to_utf8 gives
>
> std::runtime_error: locale::facet::_S_create_c_locale name not valid
>
> How do I repair this? The osx locale tools are not as conveniant as say
> ubuntu's ... (Should I not use Xcode's gcc, but build my own with a
> proper stdc++, or is there some fix in the os ?)
>
> Further: I have osx 10.5, but bjam thinks I have 10.4 - this is not a
> problem I guess, but it sure is not correct:
>
> bin/darwin/debug/link-static/macosx-version-10.4/threading-multi/

I don't know much about the program options library or the OS X locale
tools. But I can help a little with your questions about building
under darwin.

First of all, it is generally a good idea to stick with the gcc
provided by Apple with the Xcode distribution. Even though the
compiler is named gcc, you'll want to use the darwin toolset. It looks
like this is what you've been doing. The toolset is not confused about
what version of OS X your are running. The macosx-version-10.4 is
indicating that 10.4 is the minimum version of OS X on which your
built artifacts will run. At this point in time, it remains a good
default. If you tell bjam to use macosx-version=10.5 you will be
perhaps be abel to take advantage of 10.5-only features, but the
resulting executables will not run under earlier OS versions. You can
read more about this in Apple's documentation on the
-mmacosx-version-min compiler option. See also the related -isysroot
option.

Hope this helps,
Mat


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