我已经下载了Boost 1.55和MinGW。
控制台回答我说我没有任何命令。 我无法理解如何绑定两个路径并激活GCC编译器。
P.S。:如果我用微软的编译器构建激励器,我将有大约8个错误,错误3861 !!
我该如何构建它?
答案 0 :(得分:36)
首先确保您的mingw的bin目录位于您的环境PATH
中,因此gcc
和g++
可从命令提示符调用。然后进入你提取文件的位置的根目录。
使用bootstrap + b2.exe进行构建。例如,假设您只想编译boost的正则表达式部分。以下命令应该可以解决问题:
bootstrap gcc
b2 toolset=gcc regex
您可以使用:
b2 --show-libraries
获取可以单独构建的模块列表。当然,你可以用以下方式构建所有这些:
b2 toolset=gcc
查看Boost Invocation以获取可用选项的详细列表。
答案 1 :(得分:20)
Greatwolf的回答对我不起作用,所以这就是我如何设法让它发挥作用。
首先,确保MinGW\bin
在您的路径上
转到boost文件夹的tools\build\v2
目录。例如,在我的情况下,它是C:\Boost\boost_1_55_0\tools\build\v2
。然后运行
bootstrap mingw
之后,切换到根Boost目录(这部分很重要,因为b2根据当前目录检测到要构建的内容)
现在,如果你想构建Filesystem,请执行
tools\build\v2\b2 toolset=gcc --build-type=complete stage --with-filesystem
这会将libboost_filesystem-mgw48-d-1_55.dll
等放入stage\lib
。如果您想构建所有内容,请离开--with-filesystem
部分。
答案 2 :(得分:4)
我能按照锑的指示建造它。但是我最初得到了这个错误:
Bootstrapping the build engine
\Windows was unexpected at this time.
通过清除PATH变量并仅将MinGW文件夹放入其中来解决错误:
set PATH=C:\MinGW\bin
然后锑的指示为我完成了这项工作。谢谢!
其他两件可能有用的小事。应该从Windows shell构建Boost for MinGW,而不是从MSYS shell构建。在版本1.57中,bootstrap.bat脚本不再位于tools \ build \ v2中,而是直接位于tools \ build中。
答案 3 :(得分:4)
如果你已经在TDM-GCC中安装了MinGW / GCC,那么你将拥有一个" MinGW命令提示符"你可以发射。这将加载命令提示符窗口并将GCC编译器放在该窗口的PATH上。 (类似于"开发人员命令提示符"随Visual Studio一起安装。)
我认为the "MinGW distro"也附带了一个。
如果您有一个集成的命令提示符,您可以简单地:
bootstrap gcc
b2 toolset=gcc
(或您需要的任何b2
命令)如果您正在使用某些人没有明确设置工具集的示例,则必须自己添加toolset=gcc
。请注意,toolset
必须放在属性位置,而不是选项或命令位置。来自b2 --help
:
b2 [options] [properties] [install|stage]
因此,如果某人正在编写命令以使用install
选项调用--prefix
命令,则他们将其写为:
b2 --prefix=C:\boost-build install
并且您将其重写为:
b2 --prefix=C:\boost-build toolset=gcc install
有关详细信息,请参阅b2 --help
。