библиотека boost ptr_container не устанавливается после компиляции из исходного кода

Я обновил библиотеку наддува с предыдущей версии 1.54 (источник svn) до 1.57 (источник git). Хотя я использовал те же параметры ./b2, каталог назначения не содержит ptr_container библиотека.

Каталог с клонированным репозиторием правильно содержит библиотеку ptr_container по этому пути:

boost_git/libs/ptr_container

Я строю это с помощью следующей команды:

   ./b2 --install --prefix=$SHL_PATH/boost -sNO_BZIP2=1 -sNO_ZLIB runtime-link=shared link=shared -j2 install

но без успеха.


Редактировать:

Кажется, что проблема возникает только при сборке из git. Когда я скачал zip-пакет с сайта поддержки, каталог назначения правильно содержит ptr_container.

Это команды git, которые я использую для получения исходного кода:

git clone --recursive https://github.com/boostorg/boost.git boost_git
git checkout tags/boost-1.57.0
git submodule foreach --recursive git checkout tags/boost-1.57.0

Я также пытался получить последнюю версию Boost, но эта версия вообще не используется. Сразу после того, как я выполнил ./b2, я получаю странную ошибку, похожую на эту: Buidling boost error: конфликт имен<pstage \ Lib>boost_system-vc120-мт-1_58.dll»

Буду благодарен за любые подсказки, как правильно получить&установить буст из репозитория git.

4

Решение

git clone https://github.com/boostorg/boost.git
CD Boost
git checkout boost-1.57.0
git submodule update --init --recursive
./bootstrap.sh
sudo ./b2 установить
заголовки sudo ./b2

Как указано rivanov в комментариях, ./b2 headers делает трюк для включения только заголовочных файлов в установочный каталог.

0

Другие решения