2

我想在 QtCreator 中使用 boost。我正在使用 Windows 7 并安装了带有 mingw 的 QtSDK。当我执行时,bootstrap.bat我收到以下错误

C:\boost\boost_1_49_0>bootstrap
Building Boost.Build engine
'cl' is not recognized as an internal or external command,
operable program or batch file.

Failed to build Boost.Build engine.
Please consult bootstrap.log for furter diagnostics.

You can try to obtain a prebuilt binary from

   http://sf.net/project/showfiles.php?group_id=7586&package_id=72941

Also, you can file an issue at http://svn.boost.org
Please attach bootstrap.log in that case.

bootstrap.log 包含以下内容

###
### Using 'msvc' toolset.
###

C:\boost\boost_1_49_0\tools\build\v2\engine>if exist bootstrap rd /S /Q bootstrap 

C:\boost\boost_1_49_0\tools\build\v2\engine>md bootstrap 

C:\boost\boost_1_49_0\tools\build\v2\engine>cl /nologo /GZ /Zi /MLd /Fobootstrap/ /Fdbootstrap/ -DNT -DYYDEBUG kernel32.lib advapi32.lib user32.lib /Febootstrap\jam0  command.c compile.c debug.c execnt.c expand.c filent.c glob.c hash.c hdrmacro.c headers.c jam.c jambase.c jamgram.c lists.c make.c make1.c newstr.c option.c output.c parse.c pathunix.c regexp.c rules.c scan.c search.c subst.c timestamp.c variable.c modules.c strings.c filesys.c builtins.c md5.c pwd.c class.c w32_getreg.c native.c modules/set.c modules/path.c modules/regex.c modules/property-set.cmodules/sequence.c modules/order.c 

我的第一个猜测是 boost 尝试使用 MSVC 而不是 mingw 构建,但我不知道如何改变这种行为。一些帮助将不胜感激。

4

1 回答 1

5

找到这个问题后,我尝试bootstrap.bat gcc了导致错误,因为没有找到 gcc。简要查看path环境变量表明QtSDK\mingw\bin缺少路径,因为 QtSDK 没有添加它。

解决方案很简单

path = %PATH%;C:\QtSDK\mingw\bin
bootstrap.bat gcc
.\b2 --toolset=gcc
于 2012-04-15T15:47:40.737 回答