All of lore.kernel.org
 help / color / mirror / Atom feed
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
>

  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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.