Bump musl targets to musl 1.2.5 and GCC 14.3.0
Some of the existing musl targets in cross are still built with musl-cross-make using relatively old toolchain versions, currently around:
- musl 1.2.3
- GCC 9.2.0
- binutils 2.33.1
One practical issue with the current GCC version is its limited support for newer C/C++ standards, especially C++20. Some modern C/C++ dependencies now require newer compiler features, which can make them difficult or impossible to build with the existing musl images.
I am considering updating the older musl targets and would like to ask for maintainers' preference on two points:
Which versions should we target?
Would
musl 1.2.5 + GCC 14.2.0be a reasonable baseline, matching the newer musl targets already used incross?Alternatively, would you prefer a different GCC or musl version for compatibility reasons?
Should the existing musl targets continue using
musl-cross-make, or should they be migrated tocrosstool-ng?The current
musl-cross-makebased setup is relatively simple and already works for these targets, so updating the versions there would result in a smaller change.On the other hand,
crossalready usescrosstool-ngfor several newer GNU and musl targets, so migrating the older musl targets could make toolchain configuration more consistent in the long term.
My current thought is either:
Option A:
keep musl-cross-make
musl 1.2.3 -> 1.2.5
GCC 9.2.0 -> 14.3.0Before working on this, I would like to confirm which direction and version combination would be preferred.
Source: cross-rs/cross