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