diff mbox series

crucible: Build failure on riscv64/mips64el

Message ID CAOMZO5D3LL=gCQt-k5e3350tQ+XULrzhV233q1GZbGFDD5f3Cg@mail.gmail.com
State Not Applicable
Headers show
Series crucible: Build failure on riscv64/mips64el | expand

Commit Message

Fabio Estevam July 24, 2024, 11:20 a.m. UTC
Hi,

I get some reports that crucible fails to build on some architectures, such as:

riscv64:
http://autobuild.buildroot.net/results/77e7ee7c478c1f4a65acc3d29d4562d1cafae3fd/build-end.log

mips64el:
http://autobuild.buildroot.net/results/77e7ee7c478c1f4a65acc3d29d4562d1cafae3fd/build-end.log

The crucible tool is used to read and write fuses of i.MX SoCs.

Should crucible be restricted to build only for arm and aarch64?


Or is there a better fix for these build failures?

Thanks

Comments

Thomas Petazzoni July 24, 2024, 8:10 p.m. UTC | #1
Hello,

+Christian in the loop, as there is some go stuff involved.

On Wed, 24 Jul 2024 08:20:50 -0300
Fabio Estevam <festevam@gmail.com> wrote:

> Hi,
> 
> I get some reports that crucible fails to build on some architectures, such as:
> 
> riscv64:
> http://autobuild.buildroot.net/results/77e7ee7c478c1f4a65acc3d29d4562d1cafae3fd/build-end.log
> 
> mips64el:
> http://autobuild.buildroot.net/results/77e7ee7c478c1f4a65acc3d29d4562d1cafae3fd/build-end.log

The two links are the same. Here is instead a link to a crucible
failure on mips64el:

http://autobuild.buildroot.net/results/771/771600c539e28301f408067b95e92b6af4c03598/build-end.log

> 
> The crucible tool is used to read and write fuses of i.MX SoCs.
> 
> Should crucible be restricted to build only for arm and aarch64?

I agree that we don't really care about crucible on RISC-V 64-bit and
mips64el. However, the build failures you're pointing to don't seem to
be caused by anything ARM-specific in the crucible code base. Instead
they look like relatively generic issues with our Go integration.

Christian, do you think you could have a look at the above two
failures, which really don't seem to be related to the crucible code,
but more general Go issues.

The first one:

$WORK/b071/_pkg_.a(_x001.o): unknown relocation type 17; compiled without -fpic?
$WORK/b078/_pkg_.a(_x005.o): unknown relocation type 17; compiled without -fpic?

is really mysterious to me.

The second one:

/home/autobuild/autobuild/instance-9/output-1/host/lib/gcc/mips64el-buildroot-linux-gnu/13.3.0/../../../../mips64el-buildroot-linux-gnu/bin/ld: /tmp/go-link-2044248803/go.o: linking -mnan=legacy module with previous -mnan=2008 modules

is related to the fact that different object files/libraries have been
built with diffent -mnan arguments, and we try to link them together,
which isn't correct. The configuration has BR2_MIPS_NAN_2008=y, so
we're supposed to be building everything with -mnan=2008, but it seems
like some Go stuff tries to use -mnan=legacy instead.

If you could help with those weird Go issues, it would be much, much
appreciated.

Thanks a lot!

Thomas
diff mbox series

Patch

--- a/package/crucible/Config.in
+++ b/package/crucible/Config.in
@@ -1,6 +1,7 @@ 
 config BR2_PACKAGE_CRUCIBLE
        bool "crucible"
        depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
+       depends on BR2_arm || BR2_aarch64
        select BR2_PACKAGE_HOST_GO
        help
          Crucible is a One-Time-Programmable (OTP) fusing tool for the