7 октября 2025 г.

Сборка Boost под Windows и подключение к IDE

Boost – замечательная библиотека со множеством функциональности, которой так не хватает в стандартный либах C++. И, конечно же, при её сборке есть небольшие нюансы.

Сборка

Переходим в папку, где будем работать, качаем архив, разархивируем. Пусть это будет например E:\sdk\boost-1.89.0-gcc.

Далее воспользуемся генератором сборщика b2. Если у вас установлен Visual Studio и вы хотите собирать Boost под него, то можно просто вызвать:

bootstrap.bat

Если же вы хотите работать с другим компилятором, то в аргументы придется добавить нужный, например bootstrap.bat gcc для GCC. GCC, при этом, должен быть доступен – выполняйте это в оболочке cygwin, msys2 или какой-то другой. Проверить доступность компилятора можно командой gcc --version.

Для MSYS2, установить GCC можно, например, так:

pacman -Syu
pacman -S mingw-w64-x86_64-gcc

Список соответствий аргументов и компиляторов:

  • gcc - gcc
  • clang - clang
  • borland - embarcadero
  • vc71 - msvc 7.1
  • vc8 - msvc 8.0
  • vc9 - msvc 9.0
  • vc10 - msvc 10.0
  • vc11 - msvc 11.0
  • vc12 - msvc 12.0
  • vc14 - msvc 14.0 - VS2015
  • vc141 - msvc 14.1 - VS2017
  • vc142 - msvc 14.2 - VS2019
  • vc143 - msvc 14.3 - VS2022

Далее запускаем b2 для сборки библиотек. Есть очень много опций управления сборкой. Все их можно посмотреть, выполнив b2 --help. Также можно конфигурировать сборку project-config.jam. Мы будем собирать:

b2.bat -j8 stage

Где -j8 значит в 8 потоков, а stage – все библиотеки будут удобно лежать в одной папке.

Для выделения части библиотек из всего Boost для сборки предназначена утилита bcp, например:

bcp json url program_options /json-po-url

Подключение к Visual Studio

Для минимального использования Boost будет достаточно определить пути к заголовочным файлам и собранным библиотекам в свойствах проекта.

  • Заголовочные файлы указываются в C/C++ОбщиеДополнительные каталоги включаемых файлов – указываем распакованную папку Boost, у нас это E:\sdk\boost-1.89.0-gcc
  • Библиотеки указываются в КомпоновщикОбщиеДополнительные каталоги библиотек – указываем папку с библиотеками, у нас это E:\sdk\boost-1.89.0-gcc\stage\lib

Подключение к CodeBlocks с компилятором GCC

В ProjectBuild Options для проекта:

  • Во вкладке Search Directories указываем распакованную папку Boost, у нас это E:\sdk\boost-1.89.0-gcc\includes
  • Во вкладке Linker Settings указываем библиотеки, у нас это E:\sdk\boost-1.89.0-gcc\stage\lib\*.a
Комментариев нет...

Отправить комментарий