Skip to content

Building the boost libraries on Mac OS generates many warnings about 'single_module' #566

@mclow

Description

@mclow

Environment and version details

  • Operating System+version: Mac OS 26.3
  • Compiler+version: Apple clang version 17.0.0 (clang-1700.6.4.2)
  • Shell: zsh
  • B2 Version: Output of b2 -v and b2 --version
./b2 -v
B2 5.3.2 (OS=MACOSX, jobs=12)
./b2 --version
B2 5.3.2 (OS=MACOSX, jobs=12)
  • B2 Configuration: Output of b2 --debug-configuration in your project.
notice: found boost-build.jam at /Users/marshall/Sources/Boost/releases/boost_1_90_0/boost-build.jam
notice: loading B2 from /Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/build-system.jam
notice: Searching '/etc' '/Users/marshall' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/util' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/tools' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/options' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/engine' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/contrib' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/build' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src' for site-config configuration file 'site-config.jam'.
notice: Configuration file 'site-config.jam' not found in '/etc' '/Users/marshall' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/util' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/tools' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/options' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/engine' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/contrib' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/build' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src'.
notice: Searching '/Users/marshall' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/util' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/tools' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/options' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/engine' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/contrib' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src/build' '/Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/build/src' for user-config configuration file 'user-config.jam'.
notice: Loading user-config configuration file 'user-config.jam' from '/Users/marshall'.
notice: will use '/usr/bin/clang++' for clang-darwin, condition <toolset>clang-17
===============MPI Auto-configuration===============
warning: toolset mpi initialization: can not find tool mpic++
warning: initialized from /Users/marshall/user-config.jam:32
MPI auto-detection failed: unknown wrapper compiler mpic++
You will need to manually configure MPI support.
warning: toolset mpi initialization: can not find tool mpirun
warning: initialized from /Users/marshall/user-config.jam:32
MPI launcher: mpirun -np
====================================================
notice: Boost.Book: searching XSL/DTD in
notice: /Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/boostbook /Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/boostbook
notice: BoostBook: found boostbook XSL stylesheets in: /Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/boostbook/xsl
notice: BoostBook: found boostbook DTD in: /Users/marshall/Sources/Boost/releases/boost_1_90_0/tools/boostbook/dtd
notice: Searching '.' for project-config configuration file 'project-config.jam'.
notice: Loading project-config configuration file 'project-config.jam' from '.'.
Performing configuration checks

    - default address-model    : 64-bit (cached) [1]
    - default architecture     : arm (cached) [1]

Building the Boost C++ Libraries.


warning: Graph library does not contain MPI-based parallel components.
note: to enable them, add "using mpi ;" to your user-config.jam.
note: to suppress this message, pass "--without-graph_parallel" to bjam.
    - std_wstreambuf builds    : yes (cached) [2]
    - std_wstreambuf           : yes (cached) [2]
    - cxx11_constexpr          : yes (cached) [2]
    - cxx11_variadic_templates : yes (cached) [2]
    - cxx11_rvalue_references  : yes (cached) [2]
    - cxx11_hdr_thread         : yes (cached) [2]
    - cxx11_hdr_mutex          : yes (cached) [2]
    - cxx11_hdr_regex          : yes (cached) [2]
    - has std::atomic_ref      : no  (cached) [2]
    - has -Wl,--no-undefined   : no  (cached) [2]
    - has -Wl,-undefined,error : yes (cached) [2]
    - has statx                : no  (cached) [2]
    - has statx syscall        : no  (cached) [2]
    - cxx11_scoped_enums       : yes (cached) [2]
    - cxx11_noexcept           : yes (cached) [2]
    - cxx11_nullptr            : yes (cached) [2]
    - cxx11_defaulted_functions : yes (cached) [2]
    - cxx11_defaulted_moves    : yes (cached) [2]
    - cxx11_deleted_functions  : yes (cached) [2]
    - cxx11_function_template_default_args : yes (cached) [2]
    - cxx11_unified_initialization_syntax : yes (cached) [2]
    - cxx11_final              : yes (cached) [2]
    - cxx11_override           : yes (cached) [2]
    - has init_priority attribute : yes (cached) [2]
    - has stat::st_blksize     : no  (cached) [2]
    - has stat::st_mtim        : no  (cached) [2]
    - has stat::st_mtimensec   : no  (cached) [2]
    - has stat::st_mtimespec   : yes (cached) [2]
    - has stat::st_birthtim    : no  (cached) [2]
    - has stat::st_birthtimensec : no  (cached) [2]
    - has stat::st_birthtimespec : yes (cached) [2]
    - has fdopendir(O_NOFOLLOW) : yes (cached) [2]
    - has dirent::d_type       : yes (cached) [2]
    - has POSIX *at APIs       : no  (cached) [2]
    - has fallocate            : no  (cached) [2]
    - has pthread_cond_clockwait : no  (cached) [2]
    - cxx11_decltype           : yes (cached) [2]
    - cxx11_decltype_n3276     : yes (cached) [2]
    - cxx11_template_aliases   : yes (cached) [2]
    - cxx11_static_assert      : yes (cached) [2]
    - cxx11_hdr_ratio          : yes (cached) [2]
    - cxx11_hdr_chrono         : yes (cached) [2]
    - has unions with non-trivial members : yes (cached) [2]
    - has <type_traits> sufficient for Boost.Atomic : yes (cached) [2]
    - exceptions               : yes (cached) [2]
    - sfinae_expr              : yes (cached) [2]
    - has <type_traits> sufficient for Boost.Scope : yes (cached) [2]
    - has_icu builds           : no  (cached) [2]
    - lockfree boost::atomic_flag : yes (cached) [2]
    - cxx11_char16_t           : yes (cached) [2]
    - cxx11_char32_t           : yes (cached) [2]
    - cxx11_hdr_tuple          : yes (cached) [2]
    - BOOST_COMP_GNUC >= 4.3.0 : no  (cached) [2]
    - BOOST_COMP_GNUC >= 4.3.0 : no  (cached) [3]
    - boost.stacktrace.addr2line : yes (cached) [2]
    - cxx11_rvalue_references  : yes (cached) [3]
    - boost.stacktrace.backtrace : no  (cached) [2]
    - boost.stacktrace.backtrace : no  (cached) [4]
    - boost.stacktrace.basic   : no  (cached) [2]
    - boost.stacktrace.from_exception : no
    - boost.stacktrace.from_exception : no
    - boost.stacktrace.windbg  : no  (cached) [2]
    - boost.stacktrace.windbg  : no  (cached) [4]
    - boost.stacktrace.windbg_cached : no  (cached) [2]
    - boost.stacktrace.windbg_cached : no  (cached) [4]
    - cxx11_auto_declarations  : yes (cached) [2]
    - cxx11_lambdas            : yes (cached) [2]
    - cxx11_hdr_initializer_list : yes (cached) [2]
    - cxx11_numeric_limits     : yes (cached) [2]
    - cxx11_hdr_array          : yes (cached) [2]
    - cxx11_hdr_type_traits    : yes (cached) [2]
    - cxx11_explicit_conversion_operators : yes (cached) [2]
notice: [python-cfg] Configuring python...
notice: [python-cfg] Checking interpreter command "python"...
notice: [python-cfg] running command 'python -c "from sys import *; print('version=%d.%d\nplatform=%s\nprefix=%s\nexec_prefix=%s\nexecutable=%s' % (version_info[0],version_info[1],platform,prefix,exec_prefix,executable))" 2>&1'
notice: [python-cfg] ...does not invoke a working interpreter
notice: [python-cfg] Python headers and libraries not found.
warning: No python installation configured and autoconfiguration
note: failed.  See http://www.boost.org/libs/python/doc/building.html
note: for configuration instructions or pass --without-python to
note: suppress this message and silently skip all Boost.Python targets
    - BOOST_ARCH_WORD_BITS == 0.0.16 : no  (cached) [5]
    - BOOST_ARCH_WORD_BITS == 0.0.32 : no  (cached) [5]
    - BOOST_ARCH_WORD_BITS == 0.0.64 : no  (cached) [5]
    - BOOST_ARCH_X86           : no  (cached) [5]
    - BOOST_ARCH_IA64          : no  (cached) [5]
    - BOOST_ARCH_SPARC         : no  (cached) [5]
    - BOOST_ARCH_LOONGARCH     : no  (cached) [5]
    - BOOST_ARCH_MIPS          : no  (cached) [5]
    - BOOST_ARCH_PARISC        : no  (cached) [5]
    - BOOST_ARCH_ARM           : no  (cached) [5]
    - BOOST_ARCH_RISCV         : no  (cached) [5]
    - BOOST_ARCH_PPC           : no  (cached) [5]
    - BOOST_ARCH_SYS390        : no  (cached) [5]
    - has std::atomic_ref      : no  (cached) [5]
    - has -Wl,--no-undefined   : no  (cached) [5]
    - has -Wl,-undefined,error : yes (cached) [5]
    - has statx                : no  (cached) [5]
    - has statx syscall        : no  (cached) [5]
    - cxx11_rvalue_references  : yes (cached) [5]
    - cxx11_scoped_enums       : yes (cached) [5]
    - cxx11_noexcept           : yes (cached) [5]
    - cxx11_nullptr            : yes (cached) [5]
    - cxx11_defaulted_functions : yes (cached) [5]
    - cxx11_defaulted_moves    : yes (cached) [5]
    - cxx11_deleted_functions  : yes (cached) [5]
    - cxx11_function_template_default_args : yes (cached) [5]
    - cxx11_unified_initialization_syntax : yes (cached) [5]
    - cxx11_final              : yes (cached) [5]
    - cxx11_override           : yes (cached) [5]
    - has init_priority attribute : yes (cached) [5]
    - has stat::st_blksize     : no  (cached) [5]
    - has stat::st_mtim        : no  (cached) [5]
    - has stat::st_mtimensec   : no  (cached) [5]
    - has stat::st_mtimespec   : yes (cached) [5]
    - has stat::st_birthtim    : no  (cached) [5]
    - has stat::st_birthtimensec : no  (cached) [5]
    - has stat::st_birthtimespec : yes (cached) [5]
    - has fdopendir(O_NOFOLLOW) : yes (cached) [5]
    - has dirent::d_type       : yes (cached) [5]
    - has POSIX *at APIs       : no  (cached) [5]
    - has fallocate            : no  (cached) [5]
    - has pthread_cond_clockwait : no  (cached) [5]
    - cxx11_constexpr          : yes (cached) [5]
    - cxx11_decltype           : yes (cached) [5]
    - cxx11_decltype_n3276     : yes (cached) [5]
    - cxx11_template_aliases   : yes (cached) [5]
    - cxx11_static_assert      : yes (cached) [5]
    - cxx11_hdr_ratio          : yes (cached) [5]
    - cxx11_hdr_chrono         : yes (cached) [5]
    - has unions with non-trivial members : yes (cached) [5]
    - has <type_traits> sufficient for Boost.Atomic : yes (cached) [5]
    - exceptions               : yes (cached) [5]
    - sfinae_expr              : yes (cached) [5]
    - cxx11_variadic_templates : yes (cached) [5]
    - has <type_traits> sufficient for Boost.Scope : yes (cached) [5]
    - Has Large File Support   : yes (cached) [2]
    - Has attribute init_priority : yes (cached) [2]
error: No best alternative for /Users/marshall/Sources/Boost/releases/boost_1_90_0/libs/mpi/build/boost_mpi with <abi>aapcs <address-model>64 <architecture>arm <asynch-exceptions>off <binary-format>mach-o <boost.beast.allow-deprecated>on <boost.beast.separate-compilation>on <boost.cobalt.executor>any_io_executor <boost.cobalt.pmr>std <context-impl>fcontext <coverage>off <cxxstd-dialect>iso <cxxstd>11 <debug-symbols>off <exception-handling>on <extern-c-nothrow>off <format>html <inlining>full <known-warnings>hide <link>shared <optimization>speed <os>MACOSX <pch>on <preserve-test-targets>on <profiling>off <python-debugging>off <rtti>on <runtime-debugging>off <runtime-link>shared <stdlib>native <strip>off <target-os>darwin <testing.execute>on <threadapi>pthread <threading>multi <toolset-clang:platform>darwin <toolset-clang:version>17 <toolset>clang <variant>release <vectorize>off <visibility>hidden <warnings-as-errors>off <warnings>on <x-deduced-platform>arm_64
    matched: (empty)
    matched: (empty)
    - gcc visibility           : yes (cached) [2]
    - cxx11_thread_local       : yes (cached) [2]
    - cxx11_hdr_atomic         : yes (cached) [2]
    - cxx11_allocator          : yes (cached) [2]
    - cxx14_constexpr          : no  (cached) [2]
    - gcc visibility           : yes (cached) [4]
    - cxx11_noexcept           : yes (cached) [4]
    - cxx11_rvalue_references  : yes (cached) [4]
    - sfinae_expr              : yes (cached) [4]
    - cxx11_auto_declarations  : yes (cached) [4]
    - cxx11_lambdas            : yes (cached) [4]
    - cxx11_unified_initialization_syntax : yes (cached) [4]
    - cxx11_hdr_tuple          : yes (cached) [4]
    - cxx11_hdr_initializer_list : yes (cached) [4]
    - cxx11_hdr_chrono         : yes (cached) [4]
    - cxx11_thread_local       : yes (cached) [4]
    - cxx11_constexpr          : yes (cached) [4]
    - cxx11_nullptr            : yes (cached) [4]
    - cxx11_numeric_limits     : yes (cached) [4]
    - cxx11_decltype           : yes (cached) [4]
    - cxx11_hdr_array          : yes (cached) [4]
    - cxx11_hdr_atomic         : yes (cached) [4]
    - cxx11_hdr_type_traits    : yes (cached) [4]
    - cxx11_allocator          : yes (cached) [4]
    - cxx11_explicit_conversion_operators : yes (cached) [4]
    - cxx14_constexpr          : no  (cached) [4]
    - BOOST_ARCH_WORD_BITS == 0.0.16 : no  (cached) [6]
    - BOOST_ARCH_WORD_BITS == 0.0.32 : no  (cached) [6]
    - BOOST_ARCH_WORD_BITS == 0.0.64 : no  (cached) [6]
    - BOOST_ARCH_X86           : no  (cached) [6]
    - BOOST_ARCH_IA64          : no  (cached) [6]
    - BOOST_ARCH_SPARC         : no  (cached) [6]
    - BOOST_ARCH_LOONGARCH     : no  (cached) [6]
    - BOOST_ARCH_MIPS          : no  (cached) [6]
    - BOOST_ARCH_PARISC        : no  (cached) [6]
    - BOOST_ARCH_ARM           : no  (cached) [6]
    - BOOST_ARCH_RISCV         : no  (cached) [6]
    - BOOST_ARCH_PPC           : no  (cached) [6]
    - BOOST_ARCH_SYS390        : no  (cached) [6]
    - has pthread_cond_clockwait : no  (cached) [6]
    - cxx11_constexpr          : yes (cached) [6]
    - cxx11_noexcept           : yes (cached) [6]
    - cxx11_nullptr            : yes (cached) [6]
    - cxx11_decltype           : yes (cached) [6]
    - cxx11_decltype_n3276     : yes (cached) [6]
    - cxx11_template_aliases   : yes (cached) [6]
    - cxx11_static_assert      : yes (cached) [6]
    - cxx11_rvalue_references  : yes (cached) [6]
    - cxx11_scoped_enums       : yes (cached) [6]
    - cxx11_defaulted_functions : yes (cached) [6]
    - cxx11_deleted_functions  : yes (cached) [6]
    - cxx11_hdr_ratio          : yes (cached) [6]
    - cxx11_hdr_chrono         : yes (cached) [6]
    - has unions with non-trivial members : yes (cached) [6]
    - has <type_traits> sufficient for Boost.Atomic : yes (cached) [6]
    - native atomic int32 supported : yes (cached) [2]
    - native syslog supported  : yes (cached) [2]
    - pthread supports robust mutexes : no  (cached) [2]
    - BOOST_ARCH_WORD_BITS == 0.0.16 : no  (cached) [2]
    - BOOST_ARCH_WORD_BITS == 0.0.32 : no  (cached) [2]
    - BOOST_ARCH_WORD_BITS == 0.0.64 : no  (cached) [2]
    - BOOST_ARCH_X86           : no  (cached) [2]
    - BOOST_ARCH_IA64          : no  (cached) [2]
    - BOOST_ARCH_SPARC         : no  (cached) [2]
    - BOOST_ARCH_LOONGARCH     : no  (cached) [2]
    - BOOST_ARCH_MIPS          : no  (cached) [2]
    - BOOST_ARCH_PARISC        : no  (cached) [2]
    - BOOST_ARCH_ARM           : no  (cached) [2]
    - BOOST_ARCH_RISCV         : no  (cached) [2]
    - BOOST_ARCH_PPC           : no  (cached) [2]
    - BOOST_ARCH_SYS390        : no  (cached) [2]
    - has_icu builds           : no  (cached) [6]
    - Boost.Regex is header-only : yes (cached) [2]
notice: [locale] Search ICU in
notice: [locale] Search ICU in
notice: [locale] Search ICU in
notice: [locale] Search ICU in
    - icu                      : no  (cached) [2]
    - iconv (libc)             : no  (cached) [2]
    - iconv (separate)         : yes (cached) [2]
    - GCC libquadmath and __float128 support : no  (cached) [2]
    - cxx11_alignas            : yes (cached) [2]
notice: [zlib] Using pre-installed library
notice: [zlib] Condition
notice: [bzip2] Using pre-installed library
notice: [bzip2] Condition
notice: [lzma] Using pre-installed library
notice: [lzma] Condition
notice: [zstd] Using pre-installed library
notice: [zstd] Condition
    - zlib                     : yes (cached) [2]
    - bzip2                    : yes (cached) [2]
    - lzma                     : no  (cached) [2]
    - zstd                     : no  (cached) [2]
    - has_lzma_cputhreads builds : no  (cached) [2]
notice: [openssl] Using pre-installed library
notice: [openssl] Condition
    - cxx20_hdr_concepts       : no  (cached) [2]
    - cxx20_hdr_concepts       : no  (cached) [4]
    - ssl                      : no  (cached) [2]
    - std_wstreambuf builds    : yes (cached) [3]
    - std_wstreambuf           : yes (cached) [3]
    - cxx11_constexpr          : yes (cached) [3]
    - cxx11_variadic_templates : yes (cached) [3]
    - cxx11_hdr_thread         : yes (cached) [3]
    - cxx11_hdr_mutex          : yes (cached) [3]
    - cxx11_hdr_regex          : yes (cached) [3]
    - has std::atomic_ref      : no  (cached) [3]
    - has statx                : no  (cached) [3]
    - has statx syscall        : no  (cached) [3]
    - cxx11_scoped_enums       : yes (cached) [3]
    - cxx11_noexcept           : yes (cached) [3]
    - cxx11_nullptr            : yes (cached) [3]
    - cxx11_defaulted_functions : yes (cached) [3]
    - cxx11_defaulted_moves    : yes (cached) [3]
    - cxx11_deleted_functions  : yes (cached) [3]
    - cxx11_function_template_default_args : yes (cached) [3]
    - cxx11_unified_initialization_syntax : yes (cached) [3]
    - cxx11_final              : yes (cached) [3]
    - cxx11_override           : yes (cached) [3]
    - has init_priority attribute : yes (cached) [3]
    - has stat::st_blksize     : no  (cached) [3]
    - has stat::st_mtim        : no  (cached) [3]
    - has stat::st_mtimensec   : no  (cached) [3]
    - has stat::st_mtimespec   : yes (cached) [3]
    - has stat::st_birthtim    : no  (cached) [3]
    - has stat::st_birthtimensec : no  (cached) [3]
    - has stat::st_birthtimespec : yes (cached) [3]
    - has fdopendir(O_NOFOLLOW) : yes (cached) [3]
    - has dirent::d_type       : yes (cached) [3]
    - has POSIX *at APIs       : no  (cached) [3]
    - has fallocate            : no  (cached) [3]
    - has pthread_cond_clockwait : no  (cached) [3]
    - cxx11_decltype           : yes (cached) [3]
    - cxx11_decltype_n3276     : yes (cached) [3]
    - cxx11_template_aliases   : yes (cached) [3]
    - cxx11_static_assert      : yes (cached) [3]
    - cxx11_hdr_ratio          : yes (cached) [3]
    - cxx11_hdr_chrono         : yes (cached) [3]
    - has unions with non-trivial members : yes (cached) [3]
    - has <type_traits> sufficient for Boost.Atomic : yes (cached) [3]
    - exceptions               : yes (cached) [3]
    - sfinae_expr              : yes (cached) [3]
    - has <type_traits> sufficient for Boost.Scope : yes (cached) [3]
    - has_icu builds           : no  (cached) [3]
    - lockfree boost::atomic_flag : yes (cached) [3]
    - cxx11_char16_t           : yes (cached) [3]
    - cxx11_char32_t           : yes (cached) [3]
    - cxx11_hdr_tuple          : yes (cached) [3]
    - boost.stacktrace.addr2line : yes (cached) [3]
    - boost.stacktrace.backtrace : no  (cached) [3]
    - boost.stacktrace.backtrace : no  (cached) [7]
    - boost.stacktrace.basic   : no  (cached) [3]
    - boost.stacktrace.from_exception : no
    - boost.stacktrace.from_exception : no
    - boost.stacktrace.windbg  : no  (cached) [3]
    - boost.stacktrace.windbg  : no  (cached) [7]
    - boost.stacktrace.windbg_cached : no  (cached) [3]
    - boost.stacktrace.windbg_cached : no  (cached) [7]
    - cxx11_auto_declarations  : yes (cached) [3]
    - cxx11_lambdas            : yes (cached) [3]
    - cxx11_hdr_initializer_list : yes (cached) [3]
    - cxx11_numeric_limits     : yes (cached) [3]
    - cxx11_hdr_array          : yes (cached) [3]
    - cxx11_hdr_type_traits    : yes (cached) [3]
    - cxx11_explicit_conversion_operators : yes (cached) [3]
    - BOOST_ARCH_WORD_BITS == 0.0.16 : no  (cached) [8]
    - BOOST_ARCH_WORD_BITS == 0.0.32 : no  (cached) [8]
    - BOOST_ARCH_WORD_BITS == 0.0.64 : no  (cached) [8]
    - BOOST_ARCH_X86           : no  (cached) [8]
    - BOOST_ARCH_IA64          : no  (cached) [8]
    - BOOST_ARCH_SPARC         : no  (cached) [8]
    - BOOST_ARCH_LOONGARCH     : no  (cached) [8]
    - BOOST_ARCH_MIPS          : no  (cached) [8]
    - BOOST_ARCH_PARISC        : no  (cached) [8]
    - BOOST_ARCH_ARM           : no  (cached) [8]
    - BOOST_ARCH_RISCV         : no  (cached) [8]
    - BOOST_ARCH_PPC           : no  (cached) [8]
    - BOOST_ARCH_SYS390        : no  (cached) [8]
    - has std::atomic_ref      : no  (cached) [8]
    - has statx                : no  (cached) [8]
    - has statx syscall        : no  (cached) [8]
    - cxx11_rvalue_references  : yes (cached) [8]
    - cxx11_scoped_enums       : yes (cached) [8]
    - cxx11_noexcept           : yes (cached) [8]
    - cxx11_nullptr            : yes (cached) [8]
    - cxx11_defaulted_functions : yes (cached) [8]
    - cxx11_defaulted_moves    : yes (cached) [8]
    - cxx11_deleted_functions  : yes (cached) [8]
    - cxx11_function_template_default_args : yes (cached) [8]
    - cxx11_unified_initialization_syntax : yes (cached) [8]
    - cxx11_final              : yes (cached) [8]
    - cxx11_override           : yes (cached) [8]
    - has init_priority attribute : yes (cached) [8]
    - has stat::st_blksize     : no  (cached) [8]
    - has stat::st_mtim        : no  (cached) [8]
    - has stat::st_mtimensec   : no  (cached) [8]
    - has stat::st_mtimespec   : yes (cached) [8]
    - has stat::st_birthtim    : no  (cached) [8]
    - has stat::st_birthtimensec : no  (cached) [8]
    - has stat::st_birthtimespec : yes (cached) [8]
    - has fdopendir(O_NOFOLLOW) : yes (cached) [8]
    - has dirent::d_type       : yes (cached) [8]
    - has POSIX *at APIs       : no  (cached) [8]
    - has fallocate            : no  (cached) [8]
    - has pthread_cond_clockwait : no  (cached) [8]
    - cxx11_constexpr          : yes (cached) [8]
    - cxx11_decltype           : yes (cached) [8]
    - cxx11_decltype_n3276     : yes (cached) [8]
    - cxx11_template_aliases   : yes (cached) [8]
    - cxx11_static_assert      : yes (cached) [8]
    - cxx11_hdr_ratio          : yes (cached) [8]
    - cxx11_hdr_chrono         : yes (cached) [8]
    - has unions with non-trivial members : yes (cached) [8]
    - has <type_traits> sufficient for Boost.Atomic : yes (cached) [8]
    - exceptions               : yes (cached) [8]
    - sfinae_expr              : yes (cached) [8]
    - cxx11_variadic_templates : yes (cached) [8]
    - has <type_traits> sufficient for Boost.Scope : yes (cached) [8]
    - Has Large File Support   : yes (cached) [3]
    - Has attribute init_priority : yes (cached) [3]
error: No best alternative for /Users/marshall/Sources/Boost/releases/boost_1_90_0/libs/mpi/build/boost_mpi with <abi>aapcs <address-model>64 <architecture>arm <asynch-exceptions>off <binary-format>mach-o <boost.beast.allow-deprecated>on <boost.beast.separate-compilation>on <boost.cobalt.executor>any_io_executor <boost.cobalt.pmr>std <context-impl>fcontext <coverage>off <cxxstd-dialect>iso <cxxstd>11 <debug-symbols>off <exception-handling>on <extern-c-nothrow>off <format>html <inlining>full <known-warnings>hide <link>static <optimization>speed <os>MACOSX <pch>on <preserve-test-targets>on <profiling>off <python-debugging>off <rtti>on <runtime-debugging>off <runtime-link>shared <stdlib>native <strip>off <target-os>darwin <testing.execute>on <threadapi>pthread <threading>multi <toolset-clang:platform>darwin <toolset-clang:version>17 <toolset>clang <variant>release <vectorize>off <visibility>hidden <warnings-as-errors>off <warnings>on <x-deduced-platform>arm_64
    matched: (empty)
    matched: (empty)
    - gcc visibility           : yes (cached) [3]
    - cxx11_thread_local       : yes (cached) [3]
    - cxx11_hdr_atomic         : yes (cached) [3]
    - cxx11_allocator          : yes (cached) [3]
    - cxx14_constexpr          : no  (cached) [3]
    - gcc visibility           : yes (cached) [7]
    - cxx11_noexcept           : yes (cached) [7]
    - cxx11_rvalue_references  : yes (cached) [7]
    - sfinae_expr              : yes (cached) [7]
    - cxx11_auto_declarations  : yes (cached) [7]
    - cxx11_lambdas            : yes (cached) [7]
    - cxx11_unified_initialization_syntax : yes (cached) [7]
    - cxx11_hdr_tuple          : yes (cached) [7]
    - cxx11_hdr_initializer_list : yes (cached) [7]
    - cxx11_hdr_chrono         : yes (cached) [7]
    - cxx11_thread_local       : yes (cached) [7]
    - cxx11_constexpr          : yes (cached) [7]
    - cxx11_nullptr            : yes (cached) [7]
    - cxx11_numeric_limits     : yes (cached) [7]
    - cxx11_decltype           : yes (cached) [7]
    - cxx11_hdr_array          : yes (cached) [7]
    - cxx11_hdr_atomic         : yes (cached) [7]
    - cxx11_hdr_type_traits    : yes (cached) [7]
    - cxx11_allocator          : yes (cached) [7]
    - cxx11_explicit_conversion_operators : yes (cached) [7]
    - cxx14_constexpr          : no  (cached) [7]
    - BOOST_ARCH_WORD_BITS == 0.0.16 : no  (cached) [9]
    - BOOST_ARCH_WORD_BITS == 0.0.32 : no  (cached) [9]
    - BOOST_ARCH_WORD_BITS == 0.0.64 : no  (cached) [9]
    - BOOST_ARCH_X86           : no  (cached) [9]
    - BOOST_ARCH_IA64          : no  (cached) [9]
    - BOOST_ARCH_SPARC         : no  (cached) [9]
    - BOOST_ARCH_LOONGARCH     : no  (cached) [9]
    - BOOST_ARCH_MIPS          : no  (cached) [9]
    - BOOST_ARCH_PARISC        : no  (cached) [9]
    - BOOST_ARCH_ARM           : no  (cached) [9]
    - BOOST_ARCH_RISCV         : no  (cached) [9]
    - BOOST_ARCH_PPC           : no  (cached) [9]
    - BOOST_ARCH_SYS390        : no  (cached) [9]
    - has pthread_cond_clockwait : no  (cached) [9]
    - cxx11_constexpr          : yes (cached) [9]
    - cxx11_noexcept           : yes (cached) [9]
    - cxx11_nullptr            : yes (cached) [9]
    - cxx11_decltype           : yes (cached) [9]
    - cxx11_decltype_n3276     : yes (cached) [9]
    - cxx11_template_aliases   : yes (cached) [9]
    - cxx11_static_assert      : yes (cached) [9]
    - cxx11_rvalue_references  : yes (cached) [9]
    - cxx11_scoped_enums       : yes (cached) [9]
    - cxx11_defaulted_functions : yes (cached) [9]
    - cxx11_deleted_functions  : yes (cached) [9]
    - cxx11_hdr_ratio          : yes (cached) [9]
    - cxx11_hdr_chrono         : yes (cached) [9]
    - has unions with non-trivial members : yes (cached) [9]
    - has <type_traits> sufficient for Boost.Atomic : yes (cached) [9]
    - native atomic int32 supported : yes (cached) [3]
    - native syslog supported  : yes (cached) [3]
    - pthread supports robust mutexes : no  (cached) [3]
    - BOOST_ARCH_WORD_BITS == 0.0.16 : no  (cached) [3]
    - BOOST_ARCH_WORD_BITS == 0.0.32 : no  (cached) [3]
    - BOOST_ARCH_WORD_BITS == 0.0.64 : no  (cached) [3]
    - BOOST_ARCH_X86           : no  (cached) [3]
    - BOOST_ARCH_IA64          : no  (cached) [3]
    - BOOST_ARCH_SPARC         : no  (cached) [3]
    - BOOST_ARCH_LOONGARCH     : no  (cached) [3]
    - BOOST_ARCH_MIPS          : no  (cached) [3]
    - BOOST_ARCH_PARISC        : no  (cached) [3]
    - BOOST_ARCH_ARM           : no  (cached) [3]
    - BOOST_ARCH_RISCV         : no  (cached) [3]
    - BOOST_ARCH_PPC           : no  (cached) [3]
    - BOOST_ARCH_SYS390        : no  (cached) [3]
    - has_icu builds           : no  (cached) [9]
    - Boost.Regex is header-only : yes (cached) [3]
    - icu                      : no  (cached) [3]
    - iconv (libc)             : no  (cached) [3]
    - iconv (separate)         : yes (cached) [3]
    - GCC libquadmath and __float128 support : no  (cached) [3]
    - cxx11_alignas            : yes (cached) [3]
    - zlib                     : yes (cached) [3]
    - bzip2                    : yes (cached) [3]
    - lzma                     : no  (cached) [3]
    - zstd                     : no  (cached) [3]
    - has_lzma_cputhreads builds : no  (cached) [3]
    - cxx20_hdr_concepts       : no  (cached) [3]
    - cxx20_hdr_concepts       : no  (cached) [7]
    - ssl                      : no  (cached) [3]

[1] clang-17
[2] clang-darwin-17/release/arm_64/cxxstd-11-iso/threading-multi/visibility-hidden
[3] clang-darwin-17/release/arm_64/cxxstd-11-iso/link-static/threading-multi/visibility-hidden
[4] clang-darwin-17/release/arm_64/build-no/cxxstd-11-iso/threading-multi/visibility-hidden
[5] clang-darwin-17/release/arm_64/boost.process.fs-boost/cxxstd-11-iso/threading-multi/visibility-hidden
[6] clang-darwin-17/release/arm_64/cxxstd-11-iso/pch-off/threading-multi/visibility-hidden
[7] clang-darwin-17/release/arm_64/build-no/cxxstd-11-iso/link-static/threading-multi/visibility-hidden
[8] clang-darwin-17/release/arm_64/boost.process.fs-boost/cxxstd-11-iso/link-static/threading-multi/visibility-hidden
[9] clang-darwin-17/release/arm_64/cxxstd-11-iso/link-static/pch-off/threading-multi/visibility-hidden

Component configuration:

    - date_time                : building
    - exception                : building
    - graph                    : building
    - graph_parallel           : building
    - serialization            : building
    - yap                      : building
    - winapi                   : building
    - wave                     : building
    - variant2                 : building
    - variant                  : building
    - uuid                     : building
    - utility                  : building
    - url                      : building
    - unordered                : building
    - typeof                   : building
    - type_traits              : building
    - type_index               : building
    - type_erasure             : building
    - tuple                    : building
    - tokenizer                : building
    - timer                    : building
    - throw_exception          : building
    - thread                   : building
    - test                     : building
    - system                   : building
    - stl_interfaces           : building
    - static_string            : building
    - static_assert            : building
    - stacktrace               : building
    - spirit                   : building
    - sort                     : building
    - smart_ptr                : building
    - signals2                 : building
    - scope                    : building
    - regex                    : building
    - redis                    : building
    - rational                 : building
    - ratio                    : building
    - random                   : building
    - python                   : building
    - ptr_container            : building
    - property_tree            : building
    - property_map             : building
    - program_options          : building
    - process                  : building
    - preprocessor             : building
    - predef                   : building
    - pool                     : building
    - poly_collection          : building
    - pfr                      : building
    - parser                   : building
    - parameter                : building
    - outcome                  : building
    - optional                 : building
    - openmethod               : building
    - nowide                   : building
    - mysql                    : building
    - multiprecision           : building
    - multi_index              : building
    - msm                      : building
    - mqtt5                    : building
    - mpl                      : building
    - mpi                      : building
    - mp11                     : building
    - move                     : building
    - metaparse                : building
    - math                     : building
    - logic                    : building
    - log                      : building
    - lockfree                 : building
    - locale                   : building
    - lexical_cast             : building
    - leaf                     : building
    - lambda2                  : building
    - lambda                   : building
    - json                     : building
    - iterator                 : building
    - iostreams                : building
    - intrusive                : building
    - interprocess             : building
    - integer                  : building
    - histogram                : building
    - heap                     : building
    - headers                  : building
    - hash2                    : building
    - hana                     : building
    - geometry                 : building
    - function_types           : building
    - function                 : building
    - format                   : building
    - flyweight                : building
    - filesystem               : building
    - fiber                    : building
    - endian                   : building
    - dynamic_bitset           : building
    - dll                      : building
    - detail                   : building
    - describe                 : building
    - crc                      : building
    - coroutine2               : building
    - coroutine                : building
    - core                     : building
    - conversion               : building
    - contract                 : building
    - context                  : building
    - container_hash           : building
    - container                : building
    - config                   : building
    - concept_check            : building
    - compat                   : building
    - cobalt                   : building
    - chrono                   : building
    - charconv                 : building
    - bloom                    : building
    - bind                     : building
    - bimap                    : building
    - beast                    : building
    - atomic                   : building
    - assign                   : building
    - assert                   : building
    - asio                     : building
    - array                    : building
    - any                      : building
    - accumulators             : building

...patience...
...patience...
...patience...
...patience...
...patience...
...patience...
...found 26525 targets...


The Boost C++ Libraries were successfully built!

The following directory should be added to compiler include paths:

    /Users/marshall/Sources/Boost/releases/boost_1_90_0

The following directory should be added to linker library paths:

    /Users/marshall/Sources/Boost/releases/boost_1_90_0/stage/lib

Brief problem description

When I build the boost libraries ./b2 toolset=clang/cxxstd=11 (and 14/17/20/23/2c), I get many warnings that say ld: warning: -single_module is obsolete. Approximately 40 times per build of the boost libraries.

Steps to reproduce the issue

Download a boost release
Burst the archive.
Run ./bootstrap.sh
Run ./b2 toolset=clang/cxxstd=20

Actual behavior summary

There are 40 warnings emitted that should not be emitted.

If a project of yours is blocked due to this bug, please, mention it explicitly.

Attach, or place here, log output showing the bug including running
with the options: -d2 --debug-configuration

Expected behavior summary

No warning should be generated.
b2 should not pass the -single_module linker flag on Mac OS.

clang20-build.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    Projects

    Status

    🆕 New

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions