Boost auto link is trying to link with boost library that doesn't exist

212 views Asked by At

When I tried to build my project with Boost library iostreams using Clang on Windows without using CMake, I get bunch of link errors. When I'm using Boost auto link I get error that the linker can't open file boost_iostreams-clangw15-mt-x64-1_81.lib, which doesn't exist. When I disable the Boost auto link using the BOOST_ALL_NO_LIB definition and try to link to the existing boost_iostreams-clang15-mt-x64-1_81.lib lib file manually, I get bunch of unresolved external symbol errors.

I tried to ask ChatGPT what does the w character before the compiler name in lib file name stands for. He doesn't seem to know either. First he suggested that the w character stand for wide character support and I need to build the Boost libraries with ICU (International Components for Unicode) library. Then he suggested that the w character stands for Windows MSVC 2017. Any ideas how could I fix this issue?

This is the command I used for generating Boost library iostreams:

b2 --toolset=clang --with-iostreams

1

There are 1 answers

0
xarxarx On

I finally got it working.

This is the updated command I used for generating Boost library iostreams:

b2 --layout=versioned --build-type=complete --with-iostreams -s ZLIB_SOURCE=%PATH_TO_ZLIB% --toolset=clang-win --variant=release