[Boost-users] missing libboost_zlib-vc140-mt-x64-1_66.lib

483 views
Skip to first unread message

Sebastian Pfützner via Boost-users

unread,
Mar 6, 2018, 4:51:57 AM3/6/18
to boost...@lists.boost.org, Sebastian Pfützner
Hello,

I tried to build boost iostreams with zlib support with the following
command on Windows:

b2 -j 10 --build-dir=build\x64 --stagedir=stage\x64 --toolset=msvc
-sZLIB_SOURCE=L:\vc14\zlib\zlib-1.2.8 runtime-link=shared link=static
threading=multi address-model=64 debug release stage

But if I try to link my program using iostreams with zlib filter it
complains about the missing file libboost_zlib-vc140-mt-x64-1_66.lib,
and I see it was not built. I also tried editing the project-config.jam
as described in the docs:

http://www.boost.org/doc/libs/1_66_0/doc/html/bbv2/reference.html#bbv2.reference.tools

Same result. I also tried to use a pre-built zlib binary. Same result.
What should I do?

here is the output of b2:

- 32-bit : yes (cached)
- arm : no (cached)
- mips1 : no (cached)
- power : no (cached)
- sparc : no (cached)
- x86 : yes (cached)
- symlinks supported : no (cached)
- junctions supported : yes (cached)
- hardlinks supported : yes (cached)
- C++11 mutex : yes (cached)
- Boost.Config Feature Check: cxx11_auto_declarations : yes (cached)
- Boost.Config Feature Check: cxx11_constexpr : yes (cached)
- Boost.Config Feature Check: cxx11_defaulted_functions : yes (cached)
- Boost.Config Feature Check: cxx11_final : yes (cached)
- Boost.Config Feature Check: cxx11_hdr_mutex : yes (cached)
- Boost.Config Feature Check: cxx11_hdr_regex : yes (cached)
- Boost.Config Feature Check: cxx11_hdr_tuple : yes (cached)
- Boost.Config Feature Check: cxx11_lambdas : yes (cached)
- Boost.Config Feature Check: cxx11_noexcept : yes (cached)
- Boost.Config Feature Check: cxx11_nullptr : yes (cached)
- Boost.Config Feature Check: cxx11_rvalue_references : yes (cached)
- Boost.Config Feature Check: cxx11_template_aliases : yes (cached)
- Boost.Config Feature Check: cxx11_thread_local : yes (cached)
- Boost.Config Feature Check: cxx11_variadic_templates : yes (cached)
- has_icu builds : no (cached)
warning: Graph library does not contain MPI-based parallel components.
note: to enable them, add "using mpi ;" to your user-config.jam
- zlib : yes (cached)
- bzip2 : no (cached)
- lzma : no (cached)
- iconv (libc) : no (cached)
- iconv (separate) : no (cached)
- icu : no (cached)
- icu (lib64) : no (cached)
- native-atomic-int32-supported : yes (cached)
- message-compiler : yes (cached)
- native-syslog-supported : no (cached)
- pthread-supports-robust-mutexes : no (cached)
- compiler-supports-visibility : no (cached)
- compiler-supports-ssse3 : yes (cached)
- compiler-supports-avx2 : yes (cached)
- gcc visibility : no (cached)
- long double support : yes (cached)
warning: skipping optional Message Passing Interface (MPI) library.
note: to enable MPI support, add "using mpi ;" to user-config.jam.
note: to suppress this message, pass "--without-mpi" to bjam.
note: otherwise, you can safely ignore this message.
- libbacktrace builds : no (cached)
- addr2line builds : no (cached)
- WinDbg builds : yes (cached)
- WinDbgCached builds : yes (cached)
- zlib : yes (cached)
- bzip2 : no (cached)
- lzma : no (cached)

Component configuration:

- atomic : building
- chrono : building
- container : building
- context : building
- coroutine : building
- date_time : building
- exception : building
- fiber : building
- filesystem : building
- graph : building
- graph_parallel : building
- iostreams : building
- locale : building
- log : building
- math : building
- mpi : building
- program_options : building
- python : building
- random : building
- regex : building
- serialization : building
- signals : building
- stacktrace : building
- system : building
- test : building
- thread : building
- timer : building
- type_erasure : building
- wave : building

_______________________________________________
Boost-users mailing list
Boost...@lists.boost.org
https://lists.boost.org/mailman/listinfo.cgi/boost-users

Steven Watanabe via Boost-users

unread,
Mar 6, 2018, 4:25:52 PM3/6/18
to Sebastian Pfützner via Boost-users, Steven Watanabe
AMDG

On 03/06/2018 02:51 AM, Sebastian Pfützner via Boost-users wrote:
>
> I tried to build boost iostreams with zlib support with the following
> command on Windows:
>
> b2 -j 10 --build-dir=build\x64 --stagedir=stage\x64 --toolset=msvc
> -sZLIB_SOURCE=L:\vc14\zlib\zlib-1.2.8 runtime-link=shared link=static
> threading=multi address-model=64 debug release stage
>

This is supposed to work. If you add --debug-configuration,
what does it say about zlib?

> But if I try to link my program using iostreams with zlib filter it
> complains about the missing file libboost_zlib-vc140-mt-x64-1_66.lib,
> and I see it was not built. I also tried editing the project-config.jam
> as described in the docs:
>

In Christ,
Steven Watanabe

Sebastian Pfützner via Boost-users

unread,
Mar 7, 2018, 4:35:12 AM3/7/18
to boost...@lists.boost.org, Sebastian Pfützner
Am 06.03.2018 um 22:22 schrieb Steven Watanabe via Boost-users:
> This is supposed to work. If you add --debug-configuration,
> what does it say about zlib?

Ok, after calling b2 --clean and deleting the build and stage directory,
it worked. It seems that b2 sometimes doesn't detect changed parameters.

So I tried again with a prebuild zlib:

b2 -j 10 --build-dir=build\x64 --stagedir=stage\x64 --toolset=msvc
--debug-configuration -sZLIB_BINARY=zlibstat.lib
-sZLIB_INCLUDE=L:\vc14\zlib\zlib-1.2.8
-sZLIB_LIBPATH=L:\vc14\zlib\zlib-1.2.8\contrib\vstudio\vc11\x64\ZlibStatReleaseWithoutAsm
runtime-link=shared link=static threading=multi address-model=64 debug
release stage

This time libboost_zlib...lib is again not built and the output
regarding zlib is:

...
notice: [zlib] Using pre-installed library
notice: [zlib] Condition
...
- zlib : no
...

So what is wrong now?

Thanks in advance!

Steven Watanabe via Boost-users

unread,
Mar 7, 2018, 10:07:26 AM3/7/18
to Sebastian Pfützner via Boost-users, Steven Watanabe
AMDG

On 03/07/2018 02:34 AM, Sebastian Pfützner via Boost-users wrote:
> Am 06.03.2018 um 22:22 schrieb Steven Watanabe via Boost-users:
>> This is supposed to work.  If you add --debug-configuration,
>> what does it say about zlib?
>
> Ok, after calling b2 --clean and deleting the build and stage directory,
> it worked. It seems that b2 sometimes doesn't detect changed parameters.
>
> So I tried again with a prebuild zlib:
>
> b2 -j 10 --build-dir=build\x64 --stagedir=stage\x64 --toolset=msvc
> --debug-configuration -sZLIB_BINARY=zlibstat.lib
> -sZLIB_INCLUDE=L:\vc14\zlib\zlib-1.2.8
> -sZLIB_LIBPATH=L:\vc14\zlib\zlib-1.2.8\contrib\vstudio\vc11\x64\ZlibStatReleaseWithoutAsm
> runtime-link=shared link=static threading=multi address-model=64 debug
> release stage
>
> This time libboost_zlib...lib is again not built

That's expected when you use a pre-built binary.

> and the output
> regarding zlib is:
>
> ...
> notice: [zlib] Using pre-installed library
> notice: [zlib] Condition
> ...
>     - zlib                     : no
> ...
>
> So what is wrong now?
>

Look at bin.v2/configure.log. It should show
a failure either to include zlib.h or to link
to the library.

> Thanks in advance!
>

In Christ,
Steven Watanabe

Sebastian Pfützner via Boost-users

unread,
Mar 9, 2018, 4:03:40 AM3/9/18
to boost...@lists.boost.org, Sebastian Pfützner
Am 07.03.2018 um 16:07 schrieb Steven Watanabe via Boost-users:
> Look at bin.v2/configure.log. It should show
> a failure either to include zlib.h or to link
> to the library.

Yes, it was the ".lib" of the library name. If I remove it, it finds
zlib again. But now I'm back at square one. My program does not build
because boost wants to link against libboost_zlib-vc140-mt-x64-1_66.lib.
Do I need to define something to get boost to use my prebuild zlib?

Steven Watanabe via Boost-users

unread,
Mar 9, 2018, 10:30:25 AM3/9/18
to Sebastian Pfützner via Boost-users, Steven Watanabe
AMDG

On 03/09/2018 02:03 AM, Sebastian Pfützner via Boost-users wrote:
> Am 07.03.2018 um 16:07 schrieb Steven Watanabe via Boost-users:
>> Look at bin.v2/configure.log.  It should show
>> a failure either to include zlib.h or to link
>> to the library.
>
> Yes, it was the ".lib" of the library name. If I remove it, it finds
> zlib again. But now I'm back at square one. My program does not build
> because boost wants to link against libboost_zlib-vc140-mt-x64-1_66.lib.
> Do I need to define something to get boost to use my prebuild zlib?
>

It looks like the auto-linking code for
zlib was written assuming that you are building
zlib from source. You can add -DBOOST_IOSTREAMS_NO_LIB,
but then you also need to link to boost_iostreams
explicitly.

In Christ,
Steven Watanabe

Sebastian Pfützner via Boost-users

unread,
Mar 12, 2018, 9:58:17 AM3/12/18
to boost...@lists.boost.org, Sebastian Pfützner
Am 09.03.2018 um 16:30 schrieb Steven Watanabe via Boost-users:
> It looks like the auto-linking code for
> zlib was written assuming that you are building
> zlib from source. You can add -DBOOST_IOSTREAMS_NO_LIB,
> but then you also need to link to boost_iostreams
> explicitly.

Thanks for your time, I could finally solve the problem.
Do you think, this behavior should be reported? Is this:
https://svn.boost.org/trac10/newticket still the right place for bug
reports for boost iostream?

Steven Watanabe via Boost-users

unread,
Mar 12, 2018, 11:48:14 AM3/12/18
to Sebastian Pfützner via Boost-users, Steven Watanabe
AMDG

On 03/12/2018 07:58 AM, Sebastian Pfützner via Boost-users wrote:
> Am 09.03.2018 um 16:30 schrieb Steven Watanabe via Boost-users:
>>    It looks like the auto-linking code for
>> zlib was written assuming that you are building
>> zlib from source.  You can add -DBOOST_IOSTREAMS_NO_LIB,
>> but then you also need to link to boost_iostreams
>> explicitly.
>
> Thanks for your time, I could finally solve the problem.
> Do you think, this behavior should be reported? Is this:
> https://svn.boost.org/trac10/newticket still the right place for bug
> reports for boost iostream?
>

Yes. I looked at the code again, and it seems you can
get auto-linking to work with -DBOOST_ZLIB_BINARY=<libraryname>
This doesn't seem to be documented, though, which
is a bug.

In Christ,
Steven Watanabe

Edward Diener via Boost-users

unread,
Mar 12, 2018, 12:56:24 PM3/12/18
to boost...@lists.boost.org, Edward Diener
On 3/12/2018 9:58 AM, Sebastian Pfützner via Boost-users wrote:
> Am 09.03.2018 um 16:30 schrieb Steven Watanabe via Boost-users:
>>    It looks like the auto-linking code for
>> zlib was written assuming that you are building
>> zlib from source.  You can add -DBOOST_IOSTREAMS_NO_LIB,
>> but then you also need to link to boost_iostreams
>> explicitly.
>
> Thanks for your time, I could finally solve the problem.
> Do you think, this behavior should be reported? Is this:
> https://svn.boost.org/trac10/newticket still the right place for bug
> reports for boost iostream?

Please report problems for iostreams at
https://github.com/boostorg/iostreams/issues.

Reply all
Reply to author
Forward
0 new messages