在XCode 5上使用Boost - Apple LLVM 5.0

Met*_*kin 11 boost clang xcode5 llvm5

我很高兴XCode 5的NDA结束了,我可以问这个问题.

我现在在为XCode 5构建Boost时遇到问题,因为只有一个编译器LLVM 5.0

我已经尝试使用--c ++ 11,使用clang使用了Homebrew ....我尝试了各种各样的想法和脚本,但到目前为止还没有.

任何帮助,将不胜感激.谢谢

Pat*_*Fog 23

为使用clang/llvm编译的boost 1.54.0构建32/64位胖静态二进制文件,Xcode 5的唯一编译器:

  1. 下载unix tarball(不是ZIP! - 有CR/LF行结尾并且会gack)
  2. 解开它.
  3. cd到boost_1_54_0 /
  4. 跑:

    ./bootstrap.sh toolset = clang

  5. 跑:

    ./b2 toolset = clang --without-mpi cxxflags =" - arch i386 -arch x86_64 -fvisibility = hidden -fvisibility-inlines-hidden -std = c ++ 11 -stdlib = libc ++ -ftemplate-depth = 512"linkflags = "-stdlib = libc ++"link =静态阶段

...将输出库放在./stage/lib中

然后将库移动到您想要的位置.

这些是发布库,应该是您所需要的.

这适用于OSX.您可以在cxxflags = for iOS中更改-arch并添加其他选项.

如果需要消息传递接口,请从b2命令中删除--without-mpi.

====有趣的事实:

  • 建设提升似乎是一个不断变化的目标,所以这些指令将在未来版本中打破
  • 我试图在-cnoflags =中关闭-Wno-xxxx警告...但它没有用
  • bjam和b2是同一个东西,b2是新名称
  • clang作为一流的工具集被添加到了某个地方,所以你可以忽略web上的任何指令来修改"user-config.jam"(你需要的所有内容似乎都可以在b2命令行上传递给这些一次性建设.)