Broken arc toolchain

Simon Glass sjg at chromium.org
Sat Dec 18 00:12:59 CET 2021


Hi Alexey,

On Sat, 10 Jul 2021 at 16:03, Alexey Brodkin
<Alexey.Brodkin at synopsys.com> wrote:
>
> Hi Tom and Simon,
>
> So there're a couple of things involved indeed.
>
> As Tom correctly mentioned we used to use SNSP pre-built tools for ARC in TravisCI previously. And frankly the reason was we needed something GCC 8.x based while on some other arches such a new GCC triggered extra problems, see https://lists.denx.de/pipermail/u-boot/2018-May/329577.html. So I updated ARC pre-built versions and we kept using it.
> Now, that particular "mcpu" was never added into upstream GCC because we wanted to re-implement it a bit nicer, thus any up-to-date vanilla GCC won't accept it as opposed to tools built from SNPS' GCC port [which has it https://github.com/foss-for-synopsys-dwc-arc-processors/gcc/commit/84a3ee3844f9967a1b6c5923b9da4e6720c1d5bb].
> IIRC "-mcpu=hs4x_rel31" is basically an umbrella option for some options combination based on generic "-mcpu=hs4x" so we may probably update HSDK-4xD flags to be buildable by vanialla GGC.
>
> But anyways the simples short-term solution is to use our pre-built tools, latest of which are avaialble here https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2021.03-release. And for U-Boot elf32 version is what I would suggest to use, so please use https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/download/arc-2021.03-release/arc_gnu_2021.03_prebuilt_elf32_le_linux_install.tar.gz.
>
> Moreover since by default for ARC we use U-Boot built-in libgcc the same one little-endian toolchain might be safely used for building our big-endian configs equally well.
>
> If more info or actions needed, please let me know.

Thanks for the instructions. I was able to make it work.

I hope you can get your toolchain things upstream soon!

Regards,
Simon


>
> -Alexey
>
>
> ________________________________ From: Tom Rini
> Sent: Saturday, July 10, 2021 11:22 PM
> To: Simon Glass
> Cc: U-Boot Mailing List; Alexey Brodkin; Eugeniy Paltsev
> Subject: Re: Broken arc toolchain
>
> On Sat, Jul 10, 2021 at 02:11:30PM -0600, Simon Glass wrote:
>
> > Hi,
> >
> > I see this:
> >
> > $ buildman --fetch-arch arc
> >
> > Downloading toolchain for arch 'arc'
> > Checking: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/9.2.0/
> > Downloading: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/9.2.0/x86_64-gcc-9.2.0-nolibc-arc-linux.tar.xz
> >  Unpacking to: /home/sglass/.buildman-toolchains
> > Testing
> >       - looking in
> > '/home/sglass/.buildman-toolchains/gcc-9.2.0-nolibc/arc-linux/.'
> >       - looking in
> > '/home/sglass/.buildman-toolchains/gcc-9.2.0-nolibc/arc-linux/bin'
> >          - found
> > '/home/sglass/.buildman-toolchains/gcc-9.2.0-nolibc/arc-linux/bin/arc-linux-gcc'
> >       - looking in
> > '/home/sglass/.buildman-toolchains/gcc-9.2.0-nolibc/arc-linux/usr/bin'
> > Tool chain test:  OK, arch='arc', priority 5
> >
> > $ buildman -A hsdk_4xd
> > /home/sglass/.buildman-toolchains/gcc-9.2.0-nolibc/arc-linux/bin/arc-linux-
> > $ buildman hsdk_4xd
> > ...
> > arc-linux-gcc: error: unrecognized argument in option '-mcpu=hs4x_rel31
> >
> >
> > Do you have any thoughts on what is wrong, please?
>
> There's two parts.  The first part is I keep forgetting to update
> buildman to fetch the latest toolchains from kernel.org, it should be
> grabbing 11.1.0 now, not 9.2.0.  The second part is that arc, nds32 and
> xtensa have non-standard toolchain locations, see
> tools/docker/Dockerfile for where to fetch.
>
> --
> Tom


More information about the U-Boot mailing list