Boost - The Boost C++ libraries are a set of free software libraries that extend the functionality of C++.
проверялось на версии 1.57
Открыть правильную консоль.
Предположим, что разархивировали в 'с:\boost_1_57_0_src'
Visual Studio
mkdir c:\boost_1_57_0
cd c:\boost_1_57_0_src
bootstrap.bat
b2 debug release link=static threading=multi -j4 install --prefix=C:\boost_1_57_0
BOOST_ROOT=C:\boost_1_57_0
Содержимое этой папки должно быть
C:\boost_1_57_0\boost
C:\boost_1_57_0\lib
Если не так, то перенесите папку с инклюдами на два уровня вверх
C:\boost_1_57_0\include\boost-1_57\boost -> C:\boost_1_57_0\boost
Если после bootstrap.bat вывелось
Bootstrapping is done. To build, run:
.\b2
, то всё хорошо. Иначе смотрим на ошибку. У меня в путях было с виду правильное имя "C:\Program Files\Microsoft DirectX SDK (August 2006)\Utilities\Bin\x86". Оно в кавычках, и инсталлятор упорно ругался на
\Utilities\Bin\x86";"C:\Program...
Заходим в редактор переменных окружения и удаляем все двойные кавычки из PATH. Делаем это в двух местах: для пользователя и общесистемные.
Повторяем с bootstrap.bat
MinGW
==== Если буст будет компилироваться как link=static (под mingw получилось слинковаться только как shared)
Поставить MASM32 SDK (http://www.masm32.com/masmdl.htm) и прописать путь
set PATH=C:\masm32\bin;%PATH%
(это можно сделать только в консоле сборки, а после сборки буста удалить MASM32 с винта)
====
mkdir c:\boost_1_57_0
cd c:\boost_1_57_0_src
bootstrap.bat mingw
b2 debug release link=shared threading=multi -j4 install --prefix=C:\boost_1_57_0 toolset=gcc
BOOST_ROOT=C:\boost_1_57_0
PATH=%PATH%;%BOOST_ROOT%\lib
Содержимое этой папки должно быть
C:\boost_1_57_0\boost
C:\boost_1_57_0\lib
Если не так, то перенесите папку с инклюдами на два уровня вверх
C:\boost_1_57_0\include\boost-1_57\boost -> C:\boost_1_57_0\boost
Если вы уже скомпилили буст под Visual Studio, то ничего страшного.
Библиотеки буста после компиляции MinGW и Visual Studio имеют разные имена и располагаются в одном месте.
tar -xzvf boost_1_57_0.tar.gz
cd boost_1_57_0
mkdir ~/boost
./bootstrap.sh
./b2 --layout=tagged --build-type=complete --prefix=/home/<user>/boost threading=multi -j4 install
export BOOST_ROOT=~/boost
Вместо этого можно поставить boost из репозитория
sudo apt-get install libboost-all-dev
b2 --clean-all
удаляем папку lib
из C:\boost_1_57_0_src\bin.v2
удаляем папку lib
из C:\boost_1_57_0_src\stage
PS: Уже не в первый раз понадобилось описание имён бибилиотек, вот оно
http://www.boost.org/doc/libs/1_57_0/more/getting_started/unix-variants.html#library-naming
PSS: Параметры запуска b2