在Windows上使用clang 3.8构建boost

9

通过一些谷歌搜索,似乎clang对于windows的支持最近有所改善,而boost对于clang的支持也可能有所提高。但我对于这些编译器配置和boost都比较生疏,因此我不确定当前的情况如何。

我正在尝试运行以下命令:

 b2 --build-dir=build toolset=clang --build-type=complete stage

正如在www.boost.org/.../getting_started/windows的第5.2.4节中建议的那样。

这在某种程度上确实有效,但是通过查看打印到屏幕上的日志,我发现了一些令人担忧的事情:

  • 即使我在windows上,也有以clang-linux.compile.c++....开头的语句。
  • 生成12个警告(或类似),也许总是这些-Wunused-local-typedef,但我不确定。
  • 生成2个警告和8个错误(或类似),如果有错误,则构建已失败?我应该如何知道哪个boost组件未正确构建以及我该如何修复它?

我不清楚是否需要MSVC编译器、Visual Studio IDE和/或MinGW,以及是否需要手动设置要传递给编译器的标志?也许clang+boost还没有准备好用于Windows?

最终,我想使用boost.python,以后可能还会使用boost.coroutine

假设我想在自己的项目中使用clang,那么我需要使用clang编译boost吗?


FYI。微软刚刚在VS 2015 Update 1中发布了协程的实验性支持。它不会是专有的;他们正在跟踪C++1z的标准工作进展。http://blogs.msdn.com/b/vcblog/archive/2015/11/30/coroutines-in-visual-studio-2015-update-1.aspx - eh9
1个回答

3
bootstrap --with-toolset=clang-win
b2 toolset=clang-win

确保clang.exe在您的路径中。


我正在运行第一个命令,但是出现了“无法构建Boost.build引擎”的错误。当我检查日志时,它显示“未知的工具集:vcunk”,“此脚本支持的工具集有:borland、como、gcc、gcc-nocygwin、intel-win32、metrowerks、mingw、vc11、vc12、vc14、vc141、vc142”。 - user997112

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接