(Switching subject, was Re: [release] Boost 1.92 RC1 available) On Mon, Aug 10, 2026 at 7:36 PM Andrey Semashev via Boost < boost@lists.boost.org> wrote:
On 11 Aug 2026 00:58, Tom Kent via Boost wrote:
Any ideas where that could be coming from? I'm pretty sure I don't set that manually.
https://github.com/boostorg/context/blob/cc1b9e02cd530d6607becc984e1e5bfa4f7...
sysv is set by default. The default_abi rule is used by Boost.Context project in private requirements, i.e. it applies only to Boost.Context. If I'm not mistaken, for everyone else the sysv default remains in effect unless abi is specified on the command line.
I think, the feature should be made optional with no default. Boost.Context can continue to use the default_abi rule to deduce it from the target platform, for everyone else it should not be set.
On Sat, Aug 8, 2026 at 12:15 AM <oliver.kowalke@gmail.com> wrote:
for Windows '<abi>sysv' is wrong - I believe it should be '<abi>ms'
08.08.2026 04:16:00 Tom Kent via Boost <boost@lists.boost.org>:
Still seeing the same config issue I reported for the beta RC:
- long double support : yes (cached) [2] - std_wstreambuf : yes (cached) [2] error: No best alternative for /D:/RB/boost_1_92_0/libs/graph_parallel/build/boost_graph_parallel with <abi>sysv <address-model>32 <architecture>x86 <asynch-exceptions>off <binary-format>elf <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 <debug-store>object <debug-symbols>on <embed-manifest-via>linker <embed-manifest>on <exception-handling>on <extern-c-nothrow>off <inlining>off <known-warnings>hide <link>shared <midl-robust>yes <midl-stubless-proxy>yes <optimization>off <os>NT <pch>on <preserve-test-targets>on <profiling>off <python-debugging>off <python>3.14 <rtti>on <runtime-debugging>on <runtime-link>shared <stdlib>native <strip>off <target-os>windows <testing.execute>on <threadapi>win32 <threading>multi <toolset-msvc:version>14.1 <toolset>msvc <variant>debug <vectorize>off <visibility>hidden <warnings-as-errors>off <warnings>on <windows-api>desktop <x-deduced-platform>x86_32 matched: (empty) matched: (empty) - lzma : no (cached) [2] - zstd : no (cached) [2]
I've updated my command to include abi=ms but it is still complaining about a similar error: b2 -j%NUMBER_OF_PROCESSORS% --without-mpi --build-dir=D:\RB/bin.v2 --stage-libdir=lib32-msvc-14.1 --build-type=complete toolset=msvc-14.1 address-model=32 architecture=x86 abi=ms stage Performing configuration checks - default address-model : 64-bit (cached) [1] - default architecture : x86 (cached) [1] <snip> - long double support : yes (cached) [2] - std_wstreambuf : yes (cached) [2] error: No best alternative for /D:/RB/boost_1_93_0/libs/graph_parallel/build/boost_graph_parallel with <abi>ms <address-model>32 <architecture>x86 <asynch-exceptions>off <binary-format>elf <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 <debug-store>object <debug-symbols>on <embed-manifest-via>linker <embed-manifest>on <exception-handling>on <extern-c-nothrow>off <inlining>off <known-warnings>hide <link>shared <midl-robust>yes <midl-stubless-proxy>yes <optimization>off <os>NT <pch>on <preserve-test-targets>on <profiling>off <python-debugging>off <python>3.14 <rtti>on <runtime-debugging>on <runtime-link>shared <stdlib>native <strip>off <target-os>windows <testing.execute>on <threadapi>win32 <threading>multi <toolset-msvc:version>14.1 <toolset>msvc <variant>debug <vectorize>off <visibility>hidden <warnings-as-errors>off <warnings>on <windows-api>desktop <x-deduced-platform>x86_32 matched: (empty) matched: (empty) - lzma : no (cached) [2] - zstd : no (cached) [2] Tom
I've pushed some commits (boost.contex) to branch develop. Unfortunately I've no access to Windows systems. Oliver 19.08.2026 03:11:36 Tom Kent via Boost <boost@lists.boost.org>:
(Switching subject, was Re: [release] Boost 1.92 RC1 available)
On Mon, Aug 10, 2026 at 7:36 PM Andrey Semashev via Boost < boost@lists.boost.org> wrote:
On 11 Aug 2026 00:58, Tom Kent via Boost wrote:
Any ideas where that could be coming from? I'm pretty sure I don't set that manually.
https://github.com/boostorg/context/blob/cc1b9e02cd530d6607becc984e1e5bfa4f7...
sysv is set by default. The default_abi rule is used by Boost.Context project in private requirements, i.e. it applies only to Boost.Context. If I'm not mistaken, for everyone else the sysv default remains in effect unless abi is specified on the command line.
I think, the feature should be made optional with no default. Boost.Context can continue to use the default_abi rule to deduce it from the target platform, for everyone else it should not be set.
On Sat, Aug 8, 2026 at 12:15 AM <oliver.kowalke@gmail.com> wrote:
for Windows '<abi>sysv' is wrong - I believe it should be '<abi>ms'
08.08.2026 04:16:00 Tom Kent via Boost <boost@lists.boost.org>:
Still seeing the same config issue I reported for the beta RC:
- long double support : yes (cached) [2] - std_wstreambuf : yes (cached) [2] error: No best alternative for /D:/RB/boost_1_92_0/libs/graph_parallel/build/boost_graph_parallel with <abi>sysv <address-model>32 <architecture>x86 <asynch-exceptions>off <binary-format>elf <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 <debug-store>object <debug-symbols>on <embed-manifest-via>linker <embed-manifest>on <exception-handling>on <extern-c-nothrow>off <inlining>off <known-warnings>hide <link>shared <midl-robust>yes <midl-stubless-proxy>yes <optimization>off <os>NT <pch>on <preserve-test-targets>on <profiling>off <python-debugging>off <python>3.14 <rtti>on <runtime-debugging>on <runtime-link>shared <stdlib>native <strip>off <target-os>windows <testing.execute>on <threadapi>win32 <threading>multi <toolset-msvc:version>14.1 <toolset>msvc <variant>debug <vectorize>off <visibility>hidden <warnings-as-errors>off <warnings>on <windows-api>desktop <x-deduced-platform>x86_32 matched: (empty) matched: (empty) - lzma : no (cached) [2] - zstd : no (cached) [2]
I've updated my command to include abi=ms but it is still complaining about a similar error:
b2 -j%NUMBER_OF_PROCESSORS% --without-mpi --build-dir=D:\RB/bin.v2 --stage-libdir=lib32-msvc-14.1 --build-type=complete toolset=msvc-14.1 address-model=32 architecture=x86 abi=ms stage Performing configuration checks
- default address-model : 64-bit (cached) [1] - default architecture : x86 (cached) [1] <snip> - long double support : yes (cached) [2] - std_wstreambuf : yes (cached) [2] error: No best alternative for /D:/RB/boost_1_93_0/libs/graph_parallel/build/boost_graph_parallel with <abi>ms <address-model>32 <architecture>x86 <asynch-exceptions>off <binary-format>elf <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 <debug-store>object <debug-symbols>on <embed-manifest-via>linker <embed-manifest>on <exception-handling>on <extern-c-nothrow>off <inlining>off <known-warnings>hide <link>shared <midl-robust>yes <midl-stubless-proxy>yes <optimization>off <os>NT <pch>on <preserve-test-targets>on <profiling>off <python-debugging>off <python>3.14 <rtti>on <runtime-debugging>on <runtime-link>shared <stdlib>native <strip>off <target-os>windows <testing.execute>on <threadapi>win32 <threading>multi <toolset-msvc:version>14.1 <toolset>msvc <variant>debug <vectorize>off <visibility>hidden <warnings-as-errors>off <warnings>on <windows-api>desktop <x-deduced-platform>x86_32 matched: (empty) matched: (empty) - lzma : no (cached) [2] - zstd : no (cached) [2]
Tom _______________________________________________ Boost mailing list -- boost@lists.boost.org To unsubscribe send an email to boost-leave@lists.boost.org https://lists.boost.org/mailman3/lists/boost.lists.boost.org/ Archived at: https://lists.boost.org/archives/list/boost@lists.boost.org/message/YQKDK2Z3...
Tom Kent wrote:
I've updated my command to include abi=ms but it is still complaining about a similar error: ...
The reason for this is because you also need binary-format=pe. But this should be fixed elsewhere; you shouldn't need to supply these by hand.
Peter Dimov said:
The reason for this is because you also need binary-format=pe. But this should be fixed elsewhere; you shouldn't need to supply these by hand.
Now what I'm wondering is what about the CPU architecture? How does it assume the best format for the program? PE32 has a memory limit of 4GB in a Windows NT process when compiled for a 32-bit machine, which a 64-bit PE32+ image does not have. I've been wondering about dropping this flag and just providing `pe32plus`, and `pe32`, with `pe` alias to the `pe32` flag by default. Best, - Amlal
participants (4)
-
Amlal El Mahrouss -
oliver.kowalke@gmail.com -
Peter Dimov -
Tom Kent