Enlarge iostreams with bzip2 built from windows source

Recently, I spent some time working on upgrading Windows version 1.44.0 with iostreams support for both zlib and bzip2 compression filters. For various reasons, it was decided to increase the ability to create zlib and bzip2 libraries from the source. Why is it worth it, but I don’t think it matters, the version of MSVC that I use is VC9 (VS2008). Also note that from my superficial research, this problem should apply to any version of boost with iostreams created against bzip2 on windows.

Boost is built cleanly by specifying -sZLIB_SOURCE=<PATH>and -sBZIP2_SOURCE=<PATH>. However, it was noticed that boost_iostreams * .dll files depended on libbz2.dll (instead of boost_bzip2 * .dll), which were not there. Boost, however, successfully created boost_bzip2 * .dll. Please note that I use the template as a placeholder for all information about build options.

Problem:

Somewhere there is a hard-coded dependency on libbz2.dll.

Decision:

The simplest solution I found was to modify the libbz2.def included in the bzip2 source. Namely, delete the line (as from bzip2 v1.0.6, this is line 1):

LIBRARY         LIBBZ2

DLL "libbz2.dll". boost_bzip2 *.dll *.lib *.exp DLL, .

:

, SO. , - , - . (.. , , zlib bzip2 libs , - bzip2).

+5
1

, , , libbz2.def, bzip2. , ( bzip2 v1.0.6, 1):

LIBRARY   LIBBZ2

DLL "libbz2.dll". boost_bzip2 *.dll *.lib *.exp DLL, .

+3

All Articles