在Windows上构buildBoost

我正在尝试使用mingw在Windows 7 x64机器上构buildboost库。 当我尝试运行b2

b2 --build-dir="C:\boost\build" --toolset=gcc --with-python 

build立图书馆我得到一个错误

 Jamroot:138: in modules.load rule boostcpp.set-version unknown in module Jamfile</C:/Users/root/Downloads/boost_1_47_0>. C:/Users/root/Downloads/boost_1_47_0/tools/build/v2/build\project.jam:314: in load-jamfile C:/Users/root/Downloads/boost_1_47_0/tools/build/v2/build\project.jam:62: in load C:/Users/root/Downloads/boost_1_47_0/tools/build/v2/build\project.jam:168: in project.find C:/Users/root/Downloads/boost_1_47_0/tools/build/v2\build-system.jam:570: in load C:\Users\root\Downloads\boost_1_47_0\tools\build\v2/kernel\modules.jam:283: in import C:\Users\root\Downloads\boost_1_47_0\tools\build\v2\kernel\bootstrap.jam:142: in boost-build C:\Users\root\Downloads\boost_1_47_0\boost-build.jam:17: in module scope 

我做错了什么,如何解决? 任何帮助表示赞赏

谢谢

编辑:

我想用qt sdk,使用mingw来使用boost库。 这就是为什么我不能使用boost安装程序。 当然,除非我找不到解决这个问题的办法,否则我将不得不使用使用msvc构build的qt。

Solutions Collecting From Web of "在Windows上构buildBoost"

这里是我编写的一个教程 ,用于在Windows 7上使用MinGW编译Boost 1.45.0。 我在这里复制教程,以防链接中断:

1)首先我们需要编译Boost。 我们将使用Boost的最新版本:1.45.0(可能不是您阅读本教程时的最新版本。

1.1)下载Boost源码:

1.2)为了编译Boost,我们需要使用BJam。 BJam的来源包括在助推的来源。 然而,我们不能使用BJam的二进制文件:我们必须编译它,因为以下问题: http ://comments.gmane.org/gmane.comp.lib.boost.user/64146。

要编译BJam,请转到Boost的源代码,找到build.bat(应位于\ boost_1_45_0 \ tools \ build \ v2 \ engine \ src),运行cmd,cd到build.bat的文件夹并执行: build.bat gcc ( source )

编译时间不到30秒。

1.3)一旦BJam被编译,我们现在可以编译Boost。 在$ PATH中添加bjam.exe,运行cmd,cd \ boost_1_45_0然后执行:

 bjam --toolset=gcc "--prefix=C:\DestinationFolder" install 

DestinationFolder是你想要的任何文件夹路径( 源 )。

汇编持续30分钟左右。

这个线程已经有一年了,但是我遇到了同样的问题,所以如果有其他人需要解决方案的话,这是我的。

bjam正在寻找一个名为“boostcpp.jam”的文件,这个文件在boost版本中并不存在。 幸运的是,你可以在github上找到它。

https://github.com/iNiKe/boost/blob/master/boostcpp.jam

下载该文件(或复制粘贴从浏览器到一个新的文件),并将其保存为“boostcpp.jam”在你的boost目录中(或者是你运行bjam的位置,它们碰巧是一样的目录在我的情况)并再次运行该命令。 希望它也能为你工作。

对于那些只需要32位的人来说, STL的Mingw Distro已经包含了所有已经为它构建的库。