Boost logo

Boost Users :

From: Oliver Kowalke (oliver.kowalke_at_[hidden])
Date: 2020-04-20 16:18:44


alias asm_sources
   : asm/make_arm64_aapcs_elf_gas.S
     asm/jump_arm64_aapcs_elf_gas.S
     asm/ontop_arm64_aapcs_elf_gas.S
   : <abi>aapcs
     <address-model>64
     <architecture>arm
     <binary-format>elf
     <toolset>gcc
   ;

Selects the arm64 target if:
- gcc is used
- ABI is AAPCS ABI
- 64bit address memory
- binary format is ELF

cross-compiling seams not to work - or you have to specify the boost.build
properties at command line

Am Mo., 20. Apr. 2020 um 17:15 Uhr schrieb Jeff Garland via Boost-users <
boost-users_at_[hidden]>:

> That's error coming from boost.context library build for assembly code.
> Don't think there's arm64 support there for gcc -- seems like it's looking
> for clang. Obviously if you're not using boost.context you can ignore.
> Not seeing an issue for this, but maybe worthy of filing a report:
> https://github.com/boostorg/context/issues
>
> libs/context/build/Jamfile.v2
>
> # ARM64
> # ARM64/AAPCS/ELF
> alias asm_sources
> : asm/make_arm64_aapcs_elf_gas.S
> asm/jump_arm64_aapcs_elf_gas.S
> asm/ontop_arm64_aapcs_elf_gas.S
> : <abi>aapcs
> <address-model>64
> <architecture>arm
> <binary-format>elf
> <toolset>clang
> ;
>
> alias asm_sources
> : asm/make_arm64_aapcs_elf_gas.S
> asm/jump_arm64_aapcs_elf_gas.S
> asm/ontop_arm64_aapcs_elf_gas.S
> : <abi>aapcs
> <address-model>64
> <architecture>arm
> <binary-format>elf
> <toolset>gcc
> ;
>
> # ARM64/AAPCS/MACH-O
> alias asm_sources
> : asm/make_arm64_aapcs_macho_gas.S
> asm/jump_arm64_aapcs_macho_gas.S
> asm/ontop_arm64_aapcs_macho_gas.S
> : <abi>aapcs
> <address-model>64
> <architecture>arm
> <binary-format>mach-o
> <toolset>clang
> ;
>
> On Mon, Apr 20, 2020 at 6:44 AM Rahul Sreeram via Boost-users <
> boost-users_at_[hidden]> wrote:
>
>> Hi,
>>
>> I am trying to build boost 1.72 with arm 64 bit compiler. I am seeing the
>> error: No best alternative for libs/context/build/asm_sources
>> Although, after getting this error, compilation looks to succeed, but I
>> am not sure if it did properly or not.
>>
>> I have this line in the project-config.jam:
>> using gcc : arm : aarch64-fsl-linux-g++
>> --sysroot=/sysroots/aarch64-fsl-linux ;
>>
>> After running b2, I get the following output:
>> ./b2 toolset=gcc-arm
>> Performing configuration checks
>>
>> - default address-model : 64-bit
>> - default architecture : arm
>>
>> Building the Boost C++ Libraries.
>>
>>
>> error: No best alternative for libs/context/build/asm_sources
>> next alternative: required properties: <abi>aapcs <address-model>32
>> <architecture>arm <binary-format>elf <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>aapcs <address-model>32
>> <architecture>arm <binary-format>elf <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>aapcs <address-model>32
>> <architecture>arm <binary-format>elf <threading>multi <toolset>qcc
>> not matched
>> next alternative: required properties: <abi>aapcs <address-model>32
>> <architecture>arm <binary-format>mach-o <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>aapcs <address-model>32
>> <architecture>arm <binary-format>mach-o <threading>multi <toolset>darwin
>> not matched
>> next alternative: required properties: <abi>aapcs <address-model>32
>> <architecture>arm <binary-format>pe <threading>multi <toolset>msvc
>> not matched
>> next alternative: required properties: <abi>aapcs <address-model>64
>> <architecture>arm <binary-format>elf <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>aapcs <address-model>64
>> <architecture>arm <binary-format>elf <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>aapcs <address-model>64
>> <architecture>arm <binary-format>mach-o <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>aapcs <address-model>64
>> <architecture>arm <binary-format>mach-o <threading>multi <toolset>darwin
>> not matched
>> next alternative: required properties: <abi>o32 <address-model>32
>> <architecture>mips1 <binary-format>elf <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>o32 <address-model>32
>> <architecture>mips1 <binary-format>elf <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>n64 <address-model>64
>> <architecture>mips1 <binary-format>elf <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>n64 <address-model>64
>> <architecture>mips1 <binary-format>elf <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32
>> <architecture>power <binary-format>elf <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32
>> <architecture>power <binary-format>elf <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32
>> <architecture>power <binary-format>mach-o <threading>multi <toolset>darwin
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32
>> <architecture>power <binary-format>xcoff <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32
>> <architecture>power <binary-format>xcoff <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>power <binary-format>elf <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>power <binary-format>elf <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>power <binary-format>mach-o <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>power <binary-format>mach-o <threading>multi <toolset>darwin
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>power <binary-format>xcoff <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>power <binary-format>xcoff <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32_64
>> <architecture>power <binary-format>mach-o <threading>multi
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>riscv <binary-format>elf <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>s390x <binary-format>elf <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32
>> <architecture>x86 <binary-format>elf <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32
>> <architecture>x86 <binary-format>elf <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32
>> <architecture>x86 <binary-format>elf <threading>multi <toolset>intel
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32
>> <architecture>x86 <binary-format>mach-o <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32
>> <architecture>x86 <binary-format>mach-o <threading>multi <toolset>darwin
>> not matched
>> next alternative: required properties: <abi>ms <address-model>32
>> <architecture>x86 <binary-format>pe <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>ms <address-model>32
>> <architecture>x86 <binary-format>pe <threading>multi <toolset>clang-win
>> not matched
>> next alternative: required properties: <abi>ms <address-model>32
>> <architecture>x86 <binary-format>pe <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>ms <address-model>32
>> <architecture>x86 <binary-format>pe <threading>multi <toolset>intel
>> not matched
>> next alternative: required properties: <abi>ms <address-model>32
>> <architecture>x86 <binary-format>pe <threading>multi <toolset>msvc
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>x86 <binary-format>elf <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>x86 <binary-format>elf <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>x86 <binary-format>elf <threading>multi <toolset>intel
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>x86 <binary-format>mach-o <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>x86 <binary-format>mach-o <threading>multi <toolset>darwin
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>64
>> <architecture>x86 <binary-format>mach-o <threading>multi <toolset>intel
>> not matched
>> next alternative: required properties: <abi>ms <address-model>64
>> <architecture>x86 <binary-format>pe <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>ms <address-model>64
>> <architecture>x86 <binary-format>pe <threading>multi <toolset>clang-win
>> not matched
>> next alternative: required properties: <abi>ms <address-model>64
>> <architecture>x86 <binary-format>pe <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>ms <address-model>64
>> <architecture>x86 <binary-format>pe <threading>multi <toolset>intel
>> not matched
>> next alternative: required properties: <abi>ms <address-model>64
>> <architecture>x86 <binary-format>pe <threading>multi <toolset>msvc
>> not matched
>> next alternative: required properties: <abi>x32 <address-model>64
>> <architecture>x86 <binary-format>elf <threading>multi <toolset>clang
>> not matched
>> next alternative: required properties: <abi>x32 <address-model>64
>> <architecture>x86 <binary-format>elf <threading>multi <toolset>gcc
>> not matched
>> next alternative: required properties: <abi>x32 <address-model>64
>> <architecture>x86 <binary-format>elf <threading>multi <toolset>intel
>> not matched
>> next alternative: required properties: <abi>sysv <address-model>32_64
>> <architecture>x86 <binary-format>mach-o <threading>multi
>> not matched
>> next alternative: required properties: <abi>sysv
>> <architecture>combined <binary-format>mach-o <threading>multi
>> not matched
>> - C++11 mutex : yes
>> - lockfree boost::atomic_flag : yes
>> - Boost.Config Feature Check: cxx11_auto_declarations : yes
>> - Boost.Config Feature Check: cxx11_constexpr : yes
>> - Boost.Config Feature Check: cxx11_defaulted_functions : yes
>> - Boost.Config Feature Check: cxx11_final : yes
>> - Boost.Config Feature Check: cxx11_hdr_mutex : yes
>> - Boost.Config Feature Check: cxx11_hdr_tuple : yes
>> - Boost.Config Feature Check: cxx11_lambdas : yes
>> - Boost.Config Feature Check: cxx11_noexcept : yes
>> ......
>>
>>
>>
>> Regards,
>> Rahul
>> _______________________________________________
>> Boost-users mailing list
>> Boost-users_at_[hidden]
>> https://lists.boost.org/mailman/listinfo.cgi/boost-users
>>
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden]
> https://lists.boost.org/mailman/listinfo.cgi/boost-users
>



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net