On 1/6/26 02:08, Ross Burton wrote:
CAUTION: This email comes from a non Wind River email account!
Do not click links or open attachments unless you recognize the sender and know the content is safe.

On 22 Dec 2025, at 03:24, Changqing Li via lists.openembedded.org <changqing.li=windriver.com@lists.openembedded.org> wrote:
From: Changqing Li <changqing.li@windriver.com>

This is for fixing the following error of 'bitbake meta-go-toolchain'
when multilib is enabled:
Error: Transaction test error:
  file /usr/bin/go conflicts between attempted installs of go-1.25.4-r0.x86_64_v3 and lib32-go-1.25.4-r0.core2_32
  file /usr/bin/gofmt conflicts between attempted installs of go-1.25.4-r0.x86_64_v3 and lib32-go-1.25.4-r0.core2_32
Why would you do this though?  We don’t support installing bash and lib32-bash either.

Hi, Ross

The issue reproduced when multilib is enabled globally in local.conf by following config:

```

require conf/multilib.conf
MULTILIBS ?= "multilib:lib32"
DEFAULTTUNE:virtclass-multilib-lib32 ?= "core2-32"

```

bitbake meta-go-toolchain will failed with above failure.

[snip of meta-go-toolchain.bb]

TOOLCHAIN_TARGET_TASK:append = " \ ${@multilib_pkg_extend(d, 'packagegroup-go-sdk-target')} \ "

[snip of meta-go-toolchain.bb]


go is in packagegroup-go-sdk-target,  it is extended by multilib_pkg_extend.  so both go and lib32-go will be installed.

go is added in to packagegroup-go-sdk-target for providing entire toolchain include compiler.


Regards

Changqing


If the goal is “I want to build 32-bit go apps in my 64-bit userspace” then luckily go is always a cross-compiler and you can just set GOARCH when building with the standard go.

Ross