Библиотека 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-пакет с сайта Boost, каталог назначения правильно содержит 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_system-vc120-mt-1_58.dll'

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

1 ответ

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 делает трюк, чтобы включить файлы только для заголовка в каталог установки.

Другие вопросы по тегам