|
Boost : |
Subject: Re: [boost] cross-compilation: building boost on linux targetting osx
From: Niklas Angare (li51ckf02_at_[hidden])
Date: 2017-03-01 23:09:48
"Frédéric Bronvia Boost" wrote:
> I am trying to cross-build boost on linux targetting osx.
> I am using a cross compiler based on the linux clang 3.8.1 (osxcross).
...
> I identified potential issues:
>
> 1. I give toolset clang to bootstrap.sh which sets the toolset to
> clang in project-config.jam but clang-linux is used:
> common.mkdir bin.v2/libs/system/build/clang-linux-3.8.1/release
>
> Should it be clang-darwin instead?
bootstrap.sh builds b2 and the set of toolsets used for this is completely
different than the one Boost.Build has. It needs to be a host native
toolset.
> Currently, I am using the following commands to build boost:
...
> and run b2:
>
> CC="x86_64-apple-darwin13-clang" CFLAGS="-O2 -DNDEBUG"
> CXX="x86_64-apple-darwin13-clang++-libc++" CXXFLAGS="-O2 -DNDEBUG
> -std=c++14"
To my knowledge these environment variables aren't used by Boost.Build.
Aren't they typically used by make, which isn't involved here? Why not put
all the compiler flags in user-config.jam? You can use <linkflags> for the
linker flags. Use quotes like this to reduce repetition:
<cxxflags>"-x -y -z".
> ./b2 -d2
This should make b2 print the full command-line of each command. Have you
compared that to what you expect?
> boost.locale.iconv=on boost.locale.icu=off boost.locale.std=off
I have never seen these before. Where are they described?
Regards,
Niklas Angare
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk