Как использовать Повышение Visual Studio 2010

Что такое хорошее пошаговое объяснение о том, как пользоваться библиотекой Boost в пустом проекте в Visual Studio?

361
задан OlimilOops 6 June 2018 в 09:17
поделиться

5 ответов

Хотя ответ Нейта уже довольно хорош, я собираюсь расширить его более конкретно для Visual Studio 2010 по запросу и включить информацию о компиляции в различные дополнительные компоненты, для которых требуются внешние библиотеки.

Если вы используете библиотеки только для заголовков, то все, что вам нужно сделать, это разархивировать ускоренную загрузку и настроить переменные среды. В приведенной ниже инструкции задаются переменные среды только для Visual Studio, а не для всей системы в целом. Обратите внимание, что вам нужно сделать это только один раз.

  1. Разархивируйте последнюю версию boost (1.47.0 на момент написания) в каталог по вашему выбору (например, C: \ boost_1_47_0 ).
  2. Создайте новый пустой проект в Visual Studio.
  3. Откройте Property Manager и разверните одну из конфигураций для платформы по вашему выбору.
  4. Выберите и щелкните правой кнопкой мыши Microsoft.Cpp. .user и выберите Свойства , чтобы открыть страницу свойств для редактирования.
  5. Выберите Каталоги VC ++ слева.
  6. Отредактируйте раздел Включить каталоги , чтобы включить путь к вашим исходным файлам повышения.
  7. При необходимости повторите шаги 3–6 для другой платформы по вашему выбору.

Если вы хотите использовать ту часть повышения, которая требует построения, но не использовать функции, требующие внешних зависимостей, то создать ее довольно просто.

  1. Разархивируйте последнюю версию boost (1.47.0 на момент записи) в каталог по вашему выбору (например, C: \ boost_1_47_0 ).
  2. Запустите командную строку Visual Studio для платформы по вашему выбору и перейдите туда, где находится ускорение.
  3. Запустите: bootstrap.bat , чтобы собрать b2.exe (ранее называвшийся bjam).
  4. Запустите b2:

    • Win32: b2 --toolset = msvc-10.0 --build-type = завершение этапа ;
    • x64: b2 --toolset = msvc-10.0 --build-type = complete architecture = x86 address-model = 64 stage

Прогуляйтесь / посмотрите фильм или 2 / ....

  1. Выполните шаги 2–6 из набора инструкций выше для установки переменных среды.
  2. Отредактируйте раздел Каталоги библиотек , чтобы указать путь к выходным данным вашей библиотеки ускорения. (По умолчанию для примера и инструкций, приведенных выше, будет C: \ boost_1_47_0 \ stage \ lib . Переименуйте и переместите каталог сначала, если вы хотите, чтобы x86 и x64 располагались рядом (например, в \ lib \ x86 & \ lib \ x64 ).
  3. При необходимости повторите шаги 2–6 для другой платформы по вашему выбору.

Если вам нужен необязательные компоненты, тогда у вас будет больше работы. Это:

  • Boost.IOStreams Bzip2 фильтры
  • Boost.IOStreams Zlib фильтры
  • Boost.MPI
  • Boost.Python
  • Поддержка Boost.Regex ICU

Boost.IOStreams Фильтры Bzip2:

  1. Разархивируйте исходные файлы последней версии библиотеки bzip2 (1.0.6 на момент написания) в каталог по вашему выбору (например, C: \ bzip2-1.0.6 ).
  2. Следуйте второму набору приведенных выше инструкций для создания ускорения, но добавьте параметр -sBZIP2_SOURCE = "C: \ bzip2-1.0.6" при запуске b2 на шаге 5.

] Boost.IOStreams Zlib фильтры

  1. Разархивируйте последнюю версию zlib (версия 1.2.5 на момент написания) исходные файлы в каталог по вашему выбору (например, C: \ zlib-1.2.5 ).
  2. Следуйте второму набору инструкций выше, чтобы создать ускорение, но добавьте параметр -sZLIB_SOURCE = "C: \ zlib-1.2.5" при запуске b2 на шаге 5.

Boost.MPI

  1. Установите дистрибутив MPI, например Microsoft Compute Cluster Pack.
  2. Выполните шаги 1–3 из второго набора инструкций выше, чтобы создать ускорение.
  3. Отредактируйте файл project-config.jam в каталоге , возникший в результате запуска начальной загрузки. Добавьте строку с использованием mpi; (обратите внимание на пробел перед ";").
  4. Следуйте остальным шагам из второго набора инструкций выше, чтобы создать ускорение. Если автоматическое определение установки MPI завершится неудачно, вам нужно будет найти и изменить соответствующий файл сборки, чтобы найти MPI в нужном месте.

Boost.Python

  1. Установите дистрибутив Python, например ActivePython ActiveState. Убедитесь, что установка Python находится в вашем PATH.
  2. Для полной сборки 32-битной версии библиотеки требуется 32-битный Python, аналогично для 64-битной версии. Если по этой причине у вас установлено несколько версий, вам нужно указать b2, где найти конкретную версию и когда использовать какую. Один из способов сделать это - отредактировать файл project-config.jam в каталоге , который появился в результате запуска начальной загрузки. Добавьте следующие две строки, соответствующие вашим путям и версиям установки Python (обратите внимание на пробел перед ';').

    с использованием python: 2.6: C: \\ Python \\ Python26 \\ python;

    с использованием python: 2.6: C: \\ Python \\ Python26-x64 \\ python::: 64 ;

    Обратите внимание, что такая явная спецификация Python в настоящее время приводит к сбою сборки MPI. Так что вам нужно будет создать отдельную сборку со спецификацией и без нее, чтобы собрать все, если вы также создаете MPI.

  3. Следуйте второму набору инструкций выше, чтобы создать ускорение.

Повышение.Поддержка Regex ICU

  1. Разархивируйте исходный файл последней версии библиотеки ICU4C (4.8 на момент написания) в каталог по вашему выбору (например, C: \ icu4c-4_8 ).
  2. Откройте решение Visual Studio в \ source \ allinone .
  3. Build All для конфигурации отладки и выпуска для выбранной вами платформы. Может возникнуть проблема при сборке последних выпусков ICU4C с Visual Studio 2010, когда выходные данные для сборки отладки и выпуска находятся в одном каталоге (что является поведением по умолчанию). Возможный обходной путь - выполнить Build All (скажем, отладочной сборки), а затем выполнить Rebuild all во второй конфигурации (например, сборка выпуска).
  4. При сборке для x64 вам необходимо будет запустить ОС x64, поскольку есть этапы после сборки, которые включают запуск некоторых из создаваемых 64-битных приложений.
  5. При желании удалите исходный каталог, когда закончите.
  6. Следуйте второму набору инструкций выше, чтобы создать ускорение, но добавьте параметр -sICU_PATH = "C: \ icu4c-4_8" при запуске b2 на шаге 5.
506
ответ дан 23 November 2019 в 00:15
поделиться

Какие части Boost вам нужны? Многие вещи являются частью TR1, поставляемого с Visual Studio, поэтому вы можете просто сказать, например:

#include <tr1/memory>

using std::tr1::shared_ptr;

По словам Джеймса, это также должно работать (в C ++ 0x):

#include <memory>

using std::shared_ptr;
13
ответ дан 23 November 2019 в 00:15
поделиться

Хотя инструкции на веб-сайте Boost полезны, вот сокращенная версия, которая также создает библиотеки x64.

  • Вам нужно сделать это только в том случае, если вы используете одну из библиотек, упомянутых в разделе 3 на странице инструкций. (Например, для использования Boost.Filesystem требуется компиляция.) Если вы не используете ни один из них, просто разархивируйте и продолжайте.

Сборка 32-битных библиотек

Это устанавливает файлы заголовков Boost в C: \ Boost \ include \ boost- (version) , а 32-битные библиотеки в C: \ Boost \ lib \ i386 . Обратите внимание, что расположение библиотек по умолчанию - C: \ Boost \ lib , но вы захотите поместить их в каталог i386 , если вы планируете сборку для нескольких архитектур.

  1. Распаковать Boost в новый каталог.
  2. Запустите 32-разрядную командную строку MSVC и перейдите в каталог, в который был распакован Boost.
  3. Выполнить: bootstrap
  4. Выполнить: b2 toolset = msvc-12.0 --build-type = complete --libdir = C: \ Boost \ lib \ i386 install

    • Для Visual Studio 2012 используйте toolset = msvc-11.0
    • Для Visual Studio 2010 используйте toolset = msvc-10.0
    • Для Visual Studio 2017 используйте toolset = msvc-14.1
  5. Добавить C: \ Boost \ include \ boost- (version) в ваш путь включения.

  6. Добавьте C: \ Boost \ lib \ i386 в путь к вашей библиотеке.

Сборка 64-битных библиотек

Это устанавливает файлы заголовков Boost в C: \ Boost \ include \ boost- (version) , а 64-битные библиотеки в C: \ Boost \ lib \ x64 .Обратите внимание, что расположение библиотек по умолчанию - C: \ Boost \ lib , но вы захотите поместить их в каталог x64 , если планируете сборку для нескольких архитектур.

  1. Распаковать Boost в новый каталог.
  2. Запустите 64-разрядную командную строку MSVC и перейдите в каталог, в который был распакован Boost.
  3. Выполнить: bootstrap
  4. Выполнить: b2 toolset = msvc-12.0 --build-type = complete --libdir = C: \ Boost \ lib \ x64 architecture = x86 address-model = 64 install
    • Для Visual Studio 2012 используйте toolset = msvc-11.0
    • Для Visual Studio 2010 используйте toolset = msvc-10.0
  5. Добавьте C: \ Boost \ include \ boost - (версия) на ваш путь включения.
  6. Добавьте C: \ Boost \ lib \ x64 в путь к вашей библиотеке.
155
ответ дан 23 November 2019 в 00:15
поделиться

Также небольшое примечание: Если вы хотите сократить время компиляции, вы можете добавить флаг

-j2

для одновременного запуска двух параллельных сборок. Это может свести его к просмотру одного фильма ;)

5
ответ дан 23 November 2019 в 00:15
поделиться

Вы также можете попробовать -j% NUMBER_OF_PROCESSORS% в качестве аргумента, он будет использовать все ваши ядра. Делает вещи супербыстрыми на моем четырехъядерном процессоре.

20
ответ дан 23 November 2019 в 00:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: