> On 16 Mar 2023, at 09:29, Philippe Mathieu-Daudé <phi...@linaro.org> wrote:
>
> Hi Liviu,
>
>> or the countless 32-bit Raspberry Pi?
>> my xPack binary tools, which include qemu arm & qemu riscv, are also
>> available for arm 32-bit, and the analytics show about the same number of
>> downloads for 32-bit as for 64-bit.
>> given the current chip shortages, I estimate that the 32-bit Arm binaries
>> will still be useful for a few more years.
>
> IIUC xPack uses npm -- so work on any environment where npm works --,
> and fetch/install existing toolchains.
xPacks use `xpm`, which is an extension of `npm`.
If handles C/C++ (actually any language) source packages, and binary packages.
> Looking at ARM, all offered
> toolchains are 64-bit host [1] and the deprecated [2]. Toolchains for
> 32-bit hosts are still available but also listed as "deprecated" [3].
>
> [1] https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads
> [2] https://developer.arm.com/downloads/-/gnu-a
> [3] https://developer.arm.com/downloads/-/gnu-rm
Nope, xpm does not download the archives provided by ARM, it uses its own
binaries:
-
https://github.com/xpack-dev-tools/arm-none-eabi-gcc-xpack/blob/6f6917999b9bdd12c4159631f77ae08e10d2d7d2/package.json#L40-L67
There is a full set of development tools (arm/aarch64/riscv/gcc/mingw-gcc/clang
toolchain, cmake/meson/ninja/qemu/etc) which all run on 32-bit Raspberry Pi.
- https://github.com/xpack-dev-tools
> If QEMU is useful to you for testing installing xPack on a 32-bit
> emulated guest, I strongly recommend you to do that on a 64-bit host
> rather than a limited performance 32-bit Raspberry Pi 2,
I'm not targeting RPi2; there are a lot of RPi4 with less than 8GB RAM (most of
them, actually), and even more RPi3, with even less RAM), and people prefer to
continue using the 32-bit OS on them, which works quite fine; all my
development tools are available on them.
You might think this weird, but there are people who use berries as their only
machine, including for software development, and qemu arm/riscv is an important
tool for running some of the tests.
Regards,
Liviu