* [PATCH] classes/base: prefer gnu-prefixed HOSTTOOLS
@ 2025-10-29 13:03 Ross Burton
2026-02-16 9:32 ` [OE-core] " Ernst Persson
0 siblings, 1 reply; 3+ messages in thread
From: Ross Burton @ 2025-10-29 13:03 UTC (permalink / raw)
To: openembedded-core
Ubuntu 25.10 has changed the default coreutils implementation from GNU
coreutils to uutils/coreutils. Unfortunately this causes build problems:
couldn't allocate absolute path for 'null'.
tail: cannot open 'standard input' for reading: No such file or directory
install: failed to chown '...': Invalid argument (os error 22)
Clear build failures happen in 'install' and 'tail', but there may be
further breakage.
Luckily, Ubuntu also installs GNU coreutils with a binary prefix of
'gnu', so whilst these issues are root-caused and fixed in either pseudo
or uutils we can prefer the gnu-prefixed binaries where they are present.
[ YOCTO #16028 ]
Signed-off-by: Ross Burton <ross.burton@arm.com>
---
meta/classes-global/base.bbclass | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/meta/classes-global/base.bbclass b/meta/classes-global/base.bbclass
index 6de17d1bb5d..cf303c237a5 100644
--- a/meta/classes-global/base.bbclass
+++ b/meta/classes-global/base.bbclass
@@ -127,7 +127,11 @@ def setup_hosttools_dir(dest, toolsvar, d, fatal=True):
# clean up dead symlink
if os.path.islink(desttool):
os.unlink(desttool)
- srctool = bb.utils.which(path, tool, executable=True)
+
+ # Prefer gnu-prefixed binaries, if available
+ srctool = (bb.utils.which(path, "gnu" + tool, executable=True) or
+ bb.utils.which(path, tool, executable=True))
+
# gcc/g++ may link to ccache on some hosts, e.g.,
# /usr/local/bin/ccache/gcc -> /usr/bin/ccache, then which(gcc)
# would return /usr/local/bin/ccache/gcc, but what we need is
--
2.43.0
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [OE-core] [PATCH] classes/base: prefer gnu-prefixed HOSTTOOLS
2025-10-29 13:03 [PATCH] classes/base: prefer gnu-prefixed HOSTTOOLS Ross Burton
@ 2026-02-16 9:32 ` Ernst Persson
2026-02-16 10:25 ` Yoann Congal
0 siblings, 1 reply; 3+ messages in thread
From: Ernst Persson @ 2026-02-16 9:32 UTC (permalink / raw)
To: ross.burton; +Cc: openembedded-core
[-- Attachment #1: Type: text/plain, Size: 2368 bytes --]
Backport to other branches?
Den ons 29 okt. 2025 kl 14:03 skrev Ross Burton via lists.openembedded.org
<ross.burton=arm.com@lists.openembedded.org>:
> Ubuntu 25.10 has changed the default coreutils implementation from GNU
> coreutils to uutils/coreutils. Unfortunately this causes build problems:
>
> couldn't allocate absolute path for 'null'.
> tail: cannot open 'standard input' for reading: No such file or directory
> install: failed to chown '...': Invalid argument (os error 22)
>
> Clear build failures happen in 'install' and 'tail', but there may be
> further breakage.
>
> Luckily, Ubuntu also installs GNU coreutils with a binary prefix of
> 'gnu', so whilst these issues are root-caused and fixed in either pseudo
> or uutils we can prefer the gnu-prefixed binaries where they are present.
>
> [ YOCTO #16028 ]
>
> Signed-off-by: Ross Burton <ross.burton@arm.com>
> ---
> meta/classes-global/base.bbclass | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/meta/classes-global/base.bbclass
> b/meta/classes-global/base.bbclass
> index 6de17d1bb5d..cf303c237a5 100644
> --- a/meta/classes-global/base.bbclass
> +++ b/meta/classes-global/base.bbclass
> @@ -127,7 +127,11 @@ def setup_hosttools_dir(dest, toolsvar, d,
> fatal=True):
> # clean up dead symlink
> if os.path.islink(desttool):
> os.unlink(desttool)
> - srctool = bb.utils.which(path, tool, executable=True)
> +
> + # Prefer gnu-prefixed binaries, if available
> + srctool = (bb.utils.which(path, "gnu" + tool,
> executable=True) or
> + bb.utils.which(path, tool, executable=True))
> +
> # gcc/g++ may link to ccache on some hosts, e.g.,
> # /usr/local/bin/ccache/gcc -> /usr/bin/ccache, then
> which(gcc)
> # would return /usr/local/bin/ccache/gcc, but what we need is
> --
> 2.43.0
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#225455):
> https://lists.openembedded.org/g/openembedded-core/message/225455
> Mute This Topic: https://lists.openembedded.org/mt/116011582/4947266
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> ernstp@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>
[-- Attachment #2: Type: text/html, Size: 3612 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [OE-core] [PATCH] classes/base: prefer gnu-prefixed HOSTTOOLS
2026-02-16 9:32 ` [OE-core] " Ernst Persson
@ 2026-02-16 10:25 ` Yoann Congal
0 siblings, 0 replies; 3+ messages in thread
From: Yoann Congal @ 2026-02-16 10:25 UTC (permalink / raw)
To: ernstp, ross.burton; +Cc: openembedded-core
Hello,
On Mon Feb 16, 2026 at 10:32 AM CET, Ernst Persson via lists.openembedded.org wrote:
> Backport to other branches?
We do not plan to backport this to stable branches at this time.
Ubuntu 25.10 is EOL in July 2026. The next version is 26.04 (planed to
be released in April) and will be a LTS.
We would rather wait for 26.04 and see if its support is possible on
stable branches and what is needed (we will most likely revisit this
patch then).
For kirkstone (EOL'd in April), that will be too late.
Regards,
>
> Den ons 29 okt. 2025 kl 14:03 skrev Ross Burton via lists.openembedded.org
> <ross.burton=arm.com@lists.openembedded.org>:
>
>> Ubuntu 25.10 has changed the default coreutils implementation from GNU
>> coreutils to uutils/coreutils. Unfortunately this causes build problems:
>>
>> couldn't allocate absolute path for 'null'.
>> tail: cannot open 'standard input' for reading: No such file or directory
>> install: failed to chown '...': Invalid argument (os error 22)
>>
>> Clear build failures happen in 'install' and 'tail', but there may be
>> further breakage.
>>
>> Luckily, Ubuntu also installs GNU coreutils with a binary prefix of
>> 'gnu', so whilst these issues are root-caused and fixed in either pseudo
>> or uutils we can prefer the gnu-prefixed binaries where they are present.
>>
>> [ YOCTO #16028 ]
>>
>> Signed-off-by: Ross Burton <ross.burton@arm.com>
>> ---
>> meta/classes-global/base.bbclass | 6 +++++-
>> 1 file changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/meta/classes-global/base.bbclass
>> b/meta/classes-global/base.bbclass
>> index 6de17d1bb5d..cf303c237a5 100644
>> --- a/meta/classes-global/base.bbclass
>> +++ b/meta/classes-global/base.bbclass
>> @@ -127,7 +127,11 @@ def setup_hosttools_dir(dest, toolsvar, d,
>> fatal=True):
>> # clean up dead symlink
>> if os.path.islink(desttool):
>> os.unlink(desttool)
>> - srctool = bb.utils.which(path, tool, executable=True)
>> +
>> + # Prefer gnu-prefixed binaries, if available
>> + srctool = (bb.utils.which(path, "gnu" + tool,
>> executable=True) or
>> + bb.utils.which(path, tool, executable=True))
>> +
>> # gcc/g++ may link to ccache on some hosts, e.g.,
>> # /usr/local/bin/ccache/gcc -> /usr/bin/ccache, then
>> which(gcc)
>> # would return /usr/local/bin/ccache/gcc, but what we need is
>> --
>> 2.43.0
>>
>>
>>
>>
>>
--
Yoann Congal
Smile ECS
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-02-16 10:25 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-29 13:03 [PATCH] classes/base: prefer gnu-prefixed HOSTTOOLS Ross Burton
2026-02-16 9:32 ` [OE-core] " Ernst Persson
2026-02-16 10:25 ` Yoann Congal
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox