Boost 1.52+ сборка статических библиотек с помощью MSVC 2012

Родная документация Boost`а, прямо скажем, не блещет информативностью. Не знаю, может я просто не там искал, но долго не мог скомпилировать библиотеки vc110. А следующие шаги мне всё-таки помогли.


Предполагается, что Microsoft Visual Studio 2012 уже стоит.

  1. Скачиваем исходники Boost`а http://sourceforge.net/projects/boost/files/boost/
  2. Распаковываем архив, скажем, на диск C:. В результате чего у нас получится путь вида C:\boost_1_52_0
  3. Переходим в C:\boost_1_52_0 и создаем папки build и staging
  4. Запускаем батник расположенный C:\Program Files\Microsoft Visual Studio 11.0\VC\vcvarsall.bat
  5. Затем в папке C:\boost_1_52_0 лежит файл bootstrap.bat - выполняем его.
  6. Создаем и выполняем в C:\boost_1_52_0 батник mybuild.bat со следующим содержимым:
b2 install --build-dir=build --prefix=staging variant=release threading=multi link=static runtime-link=static
Ждем завершения сборки. Все наши либы и заголовочные файлы будут лежать по окончании в папке staging, которую мы создали ранее.

Так же на просторах гугла нашел возможную проблему при использовании boost` уже в составе программы.
LNK1104: невозможно открыть файл ‘libboost_filesystem-vc110-mt-1_52.lib’
Возникает это потому, что программа пытается слинковать динамическую библиотеку вместо статической. Чтобы это исправить, открываем свойства проекта и заходим C\C++ -> Создание кода. Напротив пункта Библиотека времени выполнения ставим /MT. И всё.


Автор:
Размещено: 25.2.13 11:58

^Наверх
страницы