Boost logo

Boost :

From: Dennis Luehring (dl.soluz_at_[hidden])
Date: 2022-06-04 06:56:07


i've got a working LLVM 14.x/clang-cl installation (means working with
cmake/ninja etc. with my non boost projects)
and working boost builds for 32/64 bit with VS2017,2019,2022,mingw aka a
"good working environment"

for my boost projects i tried to use my VS2017 built libs by forcing the
toolkit name with set(Boost_COMPILER "vc141") in my root CMakeLists.txt

cmake -G Ninja -DCMAKE_C_COMPILER="C:/Program
Files/LLVM/bin/clang-cl.exe" -DCMAKE_CXX_COMPILER="C:/Program
Files/LLVM/bin/clang-cl.exe" ../myproject

that does not work for all linking (sometimes lld-link.exe complains
about missing libboost_unit_test_framework-clangw14-mt-gd-x64-1_79.lib
etc. (with the wrong "clangw14" in the name)

im always using boosts own cmake configuration using the CONFIG
parameter with cmakes find_package

find_package(Boost CONFIG REQUIRED COMPONENTS unit_test_framework
filesystem system)

and i've checked that Boost_COMPILER is always "vc141" before
find_package call

do i miss something or does Boost_COMPILER does not work properly with
boost own cmake config ?

the other idea was to build boost directly with clang-cl in an VS2017
build environment
inside my current boost build folder (where are the lib32-msvc-14.1,
lib64-msvc-14.1 etc. b2 build folders resist)

i tried to build with toolkit=clang

without and beeing in a VS2017 build environment
with C:\Program Files\LLVM\bin in my path

using that b2 commandline for building

b2 -j%NUMBER_OF_PROCESSORS% toolset=clang address-model=64
--stagedir=.\lib64-clang-14.0 --build-dir=.\__build
--build-type=complete threading=multi architecture=x86 stage
--with-date_time --with-graph --with-nowide --with-test --width-config
--with-system --with-filesystem --with-serialization

but that fails with linker errors
(https://docs.microsoft.com/en-us/cpp/error-messages/tool-errors/linker-tools-error-lnk1107?view=msvc-170)

any tutorial how to force building boost with clang-cl instead of cl
using the microsoft libraries etc. as usual?

there is no clang-cl or clangw toolkit setting available to my understanding


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk