On Tue, 30 Apr 2019 at 22:53, Mateusz Loskot via Boost < boost@lists.boost.org> wrote:
On Tue, 30 Apr 2019 at 15:54, Paul Harris via Boost
wrote: In the past, b2 would build libraries named like so: libboost_atomic-gcc48-mt-d-1_60.so (note -gcc48-)
I tried compiling Boost 1.66.0 (from boost-git) with gcc 8.3.0, but the library it generates is named:
libboost_atomic-gcc-mt-d-x64-1_66.so (note the -gcc-) No compiler version number in the tag...
Possibly, it's related to the change in GCC 5+ versioning. This was accommodated in Boost.Build in October 2018 https://github.com/boostorg/build/pull/349 that is, in Boost 1.69 (boostorg/build should use milestones for issues, IMO)
Excellent, thanks for that reference.
BTW, there are also CMake's issues in FindCMake.cmake related to the compiler and architecture tag. So, you may have to specify Boost_COMPILER and Boost_ARCHITECTURE hints in order to help FindBoost.cmake recognise versioned names.
Seems like something that could be fixed at the CMake end... is anyone working on that?
I don't see any documentation around the compiler version tag, what is the current policy?
One of is what b2 --help says about --layout
"The default value is 'versioned' on Windows, and 'system' on Unix."
Yes but it doesn't mention anything about the compiler version tag and how the version number is decided (and how that decision changed). and the new x64 tag. or any of the tags. https://www.boost.org/doc/libs/1_70_0/more/getting_started/unix-variants.htm... this just says -vc71 Toolset tag: identifies the toolset and version used to build the binary. I would've liked to see a little more detail on the "version" part, in particular, how it changed with a particular Boost and Compiler version. Thanks again! Paul