Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] crucible: Build failure on riscv64/mips64el
@ 2024-07-24 11:20 Fabio Estevam
  2024-07-24 20:10 ` Thomas Petazzoni via buildroot
  0 siblings, 1 reply; 6+ messages in thread
From: Fabio Estevam @ 2024-07-24 11:20 UTC (permalink / raw)
  To: buildroot

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?

--- 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

Or is there a better fix for these build failures?

Thanks
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Buildroot] crucible: Build failure on riscv64/mips64el
  2024-07-24 11:20 [Buildroot] crucible: Build failure on riscv64/mips64el Fabio Estevam
@ 2024-07-24 20:10 ` Thomas Petazzoni via buildroot
  2024-09-19  3:21   ` Fabio Estevam
  0 siblings, 1 reply; 6+ messages in thread
From: Thomas Petazzoni via buildroot @ 2024-07-24 20:10 UTC (permalink / raw)
  To: Fabio Estevam; +Cc: Christian Stewart, buildroot

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
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Buildroot] crucible: Build failure on riscv64/mips64el
  2024-07-24 20:10 ` Thomas Petazzoni via buildroot
@ 2024-09-19  3:21   ` Fabio Estevam
  2024-09-19 11:55     ` Arnout Vandecappelle via buildroot
  0 siblings, 1 reply; 6+ messages in thread
From: Fabio Estevam @ 2024-09-19  3:21 UTC (permalink / raw)
  To: Thomas Petazzoni; +Cc: Christian Stewart, buildroot

Hi,

On Wed, Jul 24, 2024 at 5:10 PM Thomas Petazzoni
<thomas.petazzoni@bootlin.com> wrote:

> 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.

Can anyone please help with these Go issues?

I keep getting build failure reports for the crucible package.

Here is another one:
https://autobuild.buildroot.org/results/b56d9376bd758081e27bc349c192783ece22a4fb/build-end.log

Thanks
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Buildroot] crucible: Build failure on riscv64/mips64el
  2024-09-19  3:21   ` Fabio Estevam
@ 2024-09-19 11:55     ` Arnout Vandecappelle via buildroot
  2024-09-19 21:19       ` Christian Stewart via buildroot
  0 siblings, 1 reply; 6+ messages in thread
From: Arnout Vandecappelle via buildroot @ 2024-09-19 11:55 UTC (permalink / raw)
  To: Fabio Estevam, Thomas Petazzoni; +Cc: Christian Stewart, buildroot



On 19/09/2024 05:21, Fabio Estevam wrote:
> Hi,
> 
> On Wed, Jul 24, 2024 at 5:10 PM Thomas Petazzoni
> <thomas.petazzoni@bootlin.com> wrote:
> 
>> 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.
> 
> Can anyone please help with these Go issues?
> 
> I keep getting build failure reports for the crucible package.
> 
> Here is another one:
> https://autobuild.buildroot.org/results/b56d9376bd758081e27bc349c192783ece22a4fb/build-end.log

  If we don't find a solution I think we should disable Go entirely for these 
architectures. Until someone shows up who is willing to put in the effort to 
make it work.

  Regards,
  Arnout

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Buildroot] crucible: Build failure on riscv64/mips64el
  2024-09-19 11:55     ` Arnout Vandecappelle via buildroot
@ 2024-09-19 21:19       ` Christian Stewart via buildroot
  2024-09-19 21:35         ` Fabio Estevam
  0 siblings, 1 reply; 6+ messages in thread
From: Christian Stewart via buildroot @ 2024-09-19 21:19 UTC (permalink / raw)
  To: Arnout Vandecappelle; +Cc: Fabio Estevam, Thomas Petazzoni, buildroot


[-- Attachment #1.1: Type: text/plain, Size: 842 bytes --]

Hi Arnout,

On Thu, Sep 19, 2024, 4:55 AM Arnout Vandecappelle <arnout@mind.be> wrote:

> > Can anyone please help with these Go issues?
> >
> > I keep getting build failure reports for the crucible package.
> >
> > Here is another one:
> >
> https://autobuild.buildroot.org/results/b56d9376bd758081e27bc349c192783ece22a4fb/build-end.log
>
>   If we don't find a solution I think we should disable Go entirely for
> these
> architectures. Until someone shows up who is willing to put in the effort
> to
> make it work.
>

Go can compile and run fine on these architectures, just this specific
package has an incompatibility. I would suggest instead filing an issue on
the project GitHub page with the build error and disabling the package for
that known incompatible architecture + GOARM.

Best regards,
Christian

[-- Attachment #1.2: Type: text/html, Size: 1401 bytes --]

[-- Attachment #2: Type: text/plain, Size: 150 bytes --]

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Buildroot] crucible: Build failure on riscv64/mips64el
  2024-09-19 21:19       ` Christian Stewart via buildroot
@ 2024-09-19 21:35         ` Fabio Estevam
  0 siblings, 0 replies; 6+ messages in thread
From: Fabio Estevam @ 2024-09-19 21:35 UTC (permalink / raw)
  To: Christian Stewart; +Cc: Thomas Petazzoni, buildroot

Hi Christian,

On Thu, Sep 19, 2024 at 6:19 PM Christian Stewart <christian@aperture.us> wrote:

>>   If we don't find a solution I think we should disable Go entirely for these
>> architectures. Until someone shows up who is willing to put in the effort to
>> make it work.
>
>
> Go can compile and run fine on these architectures, just this specific package has an incompatibility. I would suggest instead filing an issue on the project GitHub page with the build error and disabling the package for that known incompatible architecture + GOARM.

The build error below is seen on ARM:

https://autobuild.buildroot.org/results/b56d9376bd758081e27bc349c192783ece22a4fb/

Crucible is targeted to run on i.MX armv7 and armv8 chips.

I am not familiar with the Go details to help debug this, but to me,
it seems like a Buildroot integration problem as we don't see crucible
build failures in OpenEmbedded.

Thanks
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-09-19 21:35 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-24 11:20 [Buildroot] crucible: Build failure on riscv64/mips64el Fabio Estevam
2024-07-24 20:10 ` Thomas Petazzoni via buildroot
2024-09-19  3:21   ` Fabio Estevam
2024-09-19 11:55     ` Arnout Vandecappelle via buildroot
2024-09-19 21:19       ` Christian Stewart via buildroot
2024-09-19 21:35         ` Fabio Estevam

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox