Как создать boost iostreams с поддержкой gzip и bzip2 в Windows - PullRequest
19 голосов
/ 02 сентября 2011

Как мне создать boost библиотеку iostreams с поддержкой gzip и bzip2?

1 Ответ

42 голосов
/ 02 сентября 2011

Я не эксперт, но у меня это сработало.

Вариант 1 (прямо из источника)

  1. Скачать исходные файлы для zlib и для bzip2 .

  2. Извлеките загруженные файлы в каталоги, переместите каталоги куда угодно.Мне пришлось избегать C:\Program Files (x86)\, так как я не мог заставить его работать с пробелами в имени каталога, поэтому я создал C:\Sys\ и использовал его.

  3. Откройте командную строку с помощьюс повышенными привилегиями (запуск от имени администратора), перейдите в каталог boost, например, C:\Program Files (x86)\boost\boost_1_50_0\ и введите b2.exe --with-iostreams -s BZIP2_SOURCE=C:\Sys\bzip2-1.0.6 -s ZLIB_SOURCE=C:\Sys\zlib-1.2.7

  4. Убедитесь, что C:\Program Files (x86)\boost\boost_1_50_0\stage\lib содержит нужные файлы, например, libboost_zlib-vc100-*-1_50 и libboost_bzip2-vc100-*-1_50.

Вариант 2 (сначала сборка с источника)

  1. Как указано выше, загрузите исходный кодфайлы.

  2. Откройте Visual Studio Command Prompt с повышенными привилегиями (запуск от имени администратора)

  3. Перейдите на C:\Sys\zlib-1.2.7> и введите nmake -f win32\Makefile.msc.Это создаст zlib.

  4. Перейдите к C:\Sys\bzip2-1.0.6> и введите nmake -f makefile.msc.Это создаст gzip2.

  5. Команда для boost теперь становится b2.exe --with-iostreams -s BZIP2_BINARY=libbz2 -s BZIP2_INCLUDE=C:/Sys/bzip2-1.0.6 -s BZIP2_LIBPATH=C:/Sys/bzip2-1.0.6 -s ZLIB_BINARY=zlib -s ZLIB_INCLUDE=C:/Sys/zlib-1.2.7 -s ZLIB_LIBPATH=C:/Sys/zlib-1.2.7

...