I have downloaded Boost 1.55 and MinGW.
The console answers me that I haven't any command. I can't understand how to bind two paths and activate the GCC compiler.
P.S.: If I build boost with Microsoft's compiler I will have about 8 mistakes with error 3861!!
How can I build it?
First make sure your mingw's bin directory is in your environment PATH
so gcc
and g++
is callable from your command prompt. Afterwards go into your boost's root directory of where you extracted the files.
Follow that with a bootstrap + b2.exe to build. For example, let's say you only want to compile the regex portion of boost. The follow commands should do the trick:
bootstrap gcc
b2 toolset=gcc regex
You can use:
b2 --show-libraries
to get a listing of modules you can build individually. Of course you can build all of them with just:
b2 toolset=gcc
Check out Boost Invocation for a detailed list of available options.
Greatwolf's answer didn't work for me, so here's how I managed to get it working.
First, make sure MinGW\bin
is on your path
Go to the tools\build\v2
directory of your boost folder. For example, in my case it was C:\Boost\boost_1_55_0\tools\build\v2
. Then run
bootstrap mingw
After that, switch to the root Boost directory (this part is important since b2 detects what to build based on current directory)
Now, if you want to build Filesystem, do
tools\build\v2\b2 toolset=gcc --build-type=complete stage --with-filesystem
This will put libboost_filesystem-mgw48-d-1_55.dll
etc. in stage\lib
. If you want to build everything, just leave off the --with-filesystem
part.
I was able to build it following the instructions from Antimony. However I initially got this error:
Bootstrapping the build engine
\Windows was unexpected at this time.
The error was solved by clearing the PATH variable and putting just the MinGW folder in it:
set PATH=C:\MinGW\bin
Then Antimony's instructions did the job for me. Thanks!!
Just two other small things that might be helpful. BOOST for MinGW should be build from the Windows shell, not from the MSYS shell. And in version 1.57 the bootstrap.bat script is no longer in tools\build\v2, but directly in tools\build.
If you have installed MinGW/GCC as part of TDM-GCC, you will have a "MinGW Command Prompt" that you can launch. This loads a command prompt window and puts the GCC compiler on the PATH for that window. (Similar to the "Developer Command Prompt" that is installed with Visual Studio.)
I think that the "MinGW distro" comes with one too.
If you have an integrated command prompt you can simply:
bootstrap gcc
b2 toolset=gcc
(or whatever b2
command you need)If you are working from examples where someone is not explicitly setting the toolset, you will have to add toolset=gcc
yourself. Note that toolset
must be placed in the property position not the option or command position. From b2 --help
:
b2 [options] [properties] [install|stage]
So if someone was writing the command to invoke the install
command with the --prefix
option, they'd write it as:
b2 --prefix=C:\boost-build install
And you'd re-write it as:
b2 --prefix=C:\boost-build toolset=gcc install
See b2 --help
for more details.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With