From: Zhangjian (Bamvor) <bamvor.zhangjian@huawei.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH V3 RESEND 0/5] Add ILP32 support in aarch64
Date: Tue, 2 Feb 2016 10:29:59 +0800 [thread overview]
Message-ID: <56B014A7.2070808@huawei.com> (raw)
In-Reply-To: <56A4B6F0.8080108@gmail.com>
Hi, Romain
On 2016/1/24 19:35, Romain Naour wrote:
> Hi Bamvor,
>
> Le 21/01/2016 10:03, Bamvor Zhang Jian a ?crit :
>> Hi, Romain
>>
>> On 01/21/2016 05:26 AM, Romain Naour wrote:
>>> Hi Bamvor,
>>>
>>> Le 19/01/2016 05:00, Bamvor Zhang Jian a ?crit :
>>>> Hi, Romain
>>>>
>>>> On 01/16/2016 11:25 PM, Romain Naour wrote:
>>>>> Hello Bamvor,
>> [...]
>>>>> Can you provide the command lines you used to build the toolchain ? on which abe
>>>>> branch ? Otherwise we can't test your series.
>>>> You could find the toolchain here[1]
>>>
>>> Thanks but this is not a cross-toolchain:
>>>
>>> file bin/aarch64-ilp32-linux-gnu-gcc
>>> bin/aarch64-ilp32-linux-gnu-gcc: ELF 64-bit LSB executable, ARM aarch64, version
>>> 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for
>>> GNU/Linux 3.7.0, BuildID[sha1]=0727b9d5c173c83568f5d19cfc87a05540ec8b77, not
>>> stripped
>>>
>>> It seems that's a native toolchain.
>>>
>>> It should be something like (from aarch64-linaro 2015.08)
>>> file bin/aarch64-linux-gnu-gcc
>>> bin/aarch64-linux-gnu-gcc: ELF 64-bit LSB executable, x86-64, version 1 (SYSV),
>>> dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux
>>> 2.6.32, BuildID[sha1]=91a19539d0f6b0f38d599db648b4b5760000666a, not stripped
>>>
>> Yeap, it is not a cross compile. I use it in an aarch64 chroot environment in
>> x86. I feel it is enough to test these patches.
>
> Buildroot is a tool for cross-compiling, you know it ;-)
> Honestly I'm not very interested to test the toolchain by itself, only your
> patches for the external toolchain infra.
>
>>> Can you provide a pre-build toolchain or a recipe to rebuild a aarch64 ipl32
>>> toolchain ?
>> Linaro provide abe[1] to build toochain. You could follow this script[2] to know
>> how to use it. It seems that the server in tcwg is down. Hope, you could make
>> use of the method used by abe system.
>
> I really tried to build a aarch64 ipl32 cross-toolchain with abe but I'm stuck
> with glibc build. I don't know what's the glibc branch I should use.
> By default I used the release/2.20/master branch
>
> aarch64-ilp32-linux-gnu-gcc -mabi=ilp32 -nostdlib -nostartfiles -r -o
> /home/naourr/linaro-toolchain/builds/x86_64-unknown-linux-gnu/aarch64-ilp32-linux-gnu/glibc.git~linaro-2.20-ilp32-ilp32/csu/Scrt1.o
> /home/naourr/linaro-toolchain/builds/x86_64-unknown-linux-gnu/aarch64-ilp32-linux-gnu/glibc.git~linaro-2.20-ilp32-ilp32/csu/start.os
> /home/naourr/linaro-toolchain/builds/x86_64-unknown-linux-gnu/aarch64-ilp32-linux-gnu/glibc.git~linaro-2.20-ilp32-ilp32/csu/abi-note.o
> /home/naourr/linaro-toolchain/builds/x86_64-unknown-linux-gnu/aarch64-ilp32-linux-gnu/glibc.git~linaro-2.20-ilp32-ilp32/csu/init.o
> ../sysdeps/aarch64/start.S: Assembler messages:
> ../sysdeps/aarch64/start.S:92: Error: cannot represent BFD_RELOC_64 relocation
> in this object file format
> ../sysdeps/aarch64/start.S:92: Error: cannot represent BFD_RELOC_64 relocation
> in this object file format
> ../sysdeps/aarch64/start.S:92: Error: cannot represent BFD_RELOC_64 relocation
> in this object file format
> /home/naourr/linaro-toolchain/builds/x86_64-unknown-linux-gnu/aarch64-ilp32-linux-gnu/glibc.git~linaro-2.20-ilp32-ilp32/sysd-rules:1345:
> recipe for target
> '/home/naourr/linaro-toolchain/builds/x86_64-unknown-linux-gnu/aarch64-ilp32-linux-gnu/glibc.git~linaro-2.20-ilp32-ilp32/csu/start.o'
> failed
> make[2]: ***
> [/home/naourr/linaro-toolchain/builds/x86_64-unknown-linux-gnu/aarch64-ilp32-linux-gnu/glibc.git~linaro-2.20-ilp32-ilp32/csu/start.o]
> Error 1
You could this glibc[1]. IIRC, It is for patch v6 rfc2. We are planning to update it for patch v6 rfc5.
Regards
Bamvor
[1] https://github.com/norov/glibc/tree/thunderx-ilp32-32time_toff_t
>
> Also I had several issue with the abe script on my system (Fedora) and I had to
> modify some part of the script to be able to continue the build.
>
> So, It would be great if you can provide a precompiled cross-toolchain.
>
> Best regards,
> Romain
>
>>
>> Regards
>>
>> Bamvor
>>
>> [1] https://git.linaro.org/toolchain/abe.git/blob/refs/heads/benchmarking:/abe.sh
>> [2] https://git.linaro.org/toolchain/spec2xxx-utils.git/blob/refs/heads/test:/bench-ilp32.sh
>>
>>>>>
>>>>> Do you know if Linaro plans to release a ipl32 toolchain ?
>>>> It seems that linaro will not release it before patches for ilp32 of kernel and
>>>> glibc upstreamed.
>>>> Here[2] is a status for ilp32 in linaro.
>>>
>>> Thanks for the link.
>>>
>>> Best regards,
>>> Romain
>>>
>>>>
>>>> Regards
>>>>
>>>> Bamvor
>>>>
>>>> [1] http://people.linaro.org/~maxim.kuvyrkov/bench-ilp32/
>>>> [2] https://wiki.linaro.org/Platform/arm64-ilp32
>>>>
>>>>> Best regards,
>>>>> Romain Naour
>>>>>
>>>>>>
>>>>>> changes since v2
>>>>>> 1. rebase on the patch have been .
>>>>>> "827ba46 aarch64: add big endian(aarch64_be) support"
>>>>>> 2. Add "!BR2_aarch64_be" along with "!BR2_aarch64" in patch 1/5 according to
>>>>>> the suggestion from Thomas.
>>>>>> 3. Improve the ifeq in patch 2/5 according to Gustavo.
>>>>>> 4. Do not pass invalid "-mabi" option to ld in patch 3/5 according to Gustavo.
>>>>>>
>>>>>> changes since v1
>>>>>> 1. Avoid mabi issue in gcc 4.8 while build aarch64 lp64.
>>>>>> 2. Change default libc, toolchain for ilp32 build.
>>>>>> 3. Others changes suggested by Gustavo.
>>>>>>
>>>>>> [1] http://lists.busybox.net/pipermail/buildroot/2015-March/122115.html
>>>>>> [2] http://lists.busybox.net/pipermail/buildroot/2015-March/122424.html
>>>>>> [3] https://git.linaro.org/kernel/linux-linaro-tracking.git
>>>>>> [4] https://wiki.linaro.org/ABE
>>>>>>
>>>>>>
>>>>>> Bamvor Jian Zhang (5):
>>>>>> aarch64: align aarch64_be config with aarch64s'
>>>>>> aarch64: ilp32: handle special file name
>>>>>> aarch64: ilp32: add ilp32 compiler and linker flags
>>>>>> aarch64: ilp32: add ilp32 build config
>>>>>> aarch64: ilp32 defconfig examples
>>>>>>
>>>>>> Makefile | 6 +++
>>>>>> arch/Config.in.aarch64 | 36 ++++++++++++++++++
>>>>>> configs/aarch64_be_defconfig | 2 +
>>>>>> configs/aarch64_be_ilp32_defconfig | 8 ++++
>>>>>> configs/aarch64_ilp32_defconfig | 8 ++++
>>>>>> package/Makefile.in | 13 ++++++-
>>>>>> package/binutils/Config.in | 4 +-
>>>>>> package/binutils/Config.in.host | 5 ++-
>>>>>> package/dropwatch/Config.in | 5 ++-
>>>>>> package/gcc/Config.in.host | 11 +++---
>>>>>> package/gdb/Config.in.host | 2 +-
>>>>>> package/gpsd/Config.in | 2 +-
>>>>>> package/lightning/Config.in | 5 ++-
>>>>>> package/nginx/Config.in | 3 +-
>>>>>> package/oprofile/Config.in | 6 ++-
>>>>>> toolchain/Config.in | 2 +
>>>>>> toolchain/helpers.mk | 5 ++-
>>>>>> toolchain/toolchain-buildroot/Config.in | 7 ++--
>>>>>> toolchain/toolchain-external/Config.in | 22 +++++++++++
>>>>>> toolchain/toolchain-external/toolchain-external.mk | 44 +++++++++++++++++++++-
>>>>>> 20 files changed, 169 insertions(+), 27 deletions(-)
>>>>>> create mode 100644 configs/aarch64_be_defconfig
>>>>>> create mode 100644 configs/aarch64_be_ilp32_defconfig
>>>>>> create mode 100644 configs/aarch64_ilp32_defconfig
>>>>>>
>>>>>
>>>>
>>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
>
next prev parent reply other threads:[~2016-02-02 2:29 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-13 1:16 [Buildroot] [PATCH V3 RESEND 0/5] Add ILP32 support in aarch64 Bamvor Jian Zhang
2015-08-13 1:16 ` [Buildroot] [PATCH V3 RESEND 1/5] aarch64: align aarch64_be config with aarch64s' Bamvor Jian Zhang
2015-08-13 1:16 ` [Buildroot] [PATCH V3 RESEND 2/5] aarch64: ilp32: handle special file name Bamvor Jian Zhang
2015-08-13 1:16 ` [Buildroot] [PATCH V3 RESEND 3/5] aarch64: ilp32: add ilp32 compiler and linker flags Bamvor Jian Zhang
2015-08-13 1:16 ` [Buildroot] [PATCH V3 RESEND 4/5] aarch64: ilp32: add ilp32 build config Bamvor Jian Zhang
2015-08-13 1:16 ` [Buildroot] [PATCH V3 RESEND 5/5] aarch64: ilp32 defconfig examples Bamvor Jian Zhang
2016-01-16 15:25 ` [Buildroot] [PATCH V3 RESEND 0/5] Add ILP32 support in aarch64 Romain Naour
2016-01-19 4:00 ` Bamvor Zhang Jian
2016-01-20 21:26 ` Romain Naour
2016-01-21 9:03 ` Bamvor Zhang Jian
2016-01-24 11:35 ` Romain Naour
2016-02-02 2:29 ` Zhangjian [this message]
2016-02-02 9:04 ` Romain Naour
2016-02-02 10:49 ` Zhangjian
2016-02-02 11:16 ` Arnout Vandecappelle
2016-02-03 21:11 ` Romain Naour
2016-03-20 13:10 ` Zhangjian
2016-03-20 20:33 ` Romain Naour
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56B014A7.2070808@huawei.com \
--to=bamvor.zhangjian@huawei.com \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox