pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Failure to build go on some 32bit port-i386 machines



Hi,

I've been trying to build node_exporter-1.7.0nb3 on an Alix machine
running port-i386 (CPU is an AMD Geode LX, i586 class, 32 bit), but with
no success. Building node_exporter requires building go121-1.21.8 which
requires go118-1.18.10nb1 which requires go14-1.4.3nb15. On the Alix,
building go118 reliably dies with SIGILL. The prebuilt node_exporter
package fetched via pkgin also has it's executable die with SIGILL
on early startup (internal Go setup according to the core dump).

To narrow things down a little and because I don't have the hardware
to test, I ran qemu with various Intel 32 bit CPU emulation targets:
 - i486: go14 dies with SIGILL in build
 - pentium: go118 dies with SIGILL in build
 - pentium3: go118 dies with SIGLL in build
 - n270: successfull build of node_exporter with all go-versions
   needed

It looks like Go by now needs a sufficiently new 32 bit Intel (the n270
is the newest 32bit Intel CPU qemu seems to support) just to build.

Does pkgsrc have a mechanism to signal:
 - package is expected to build on arch ${arch-foo} (e.g. i386)
 - but know not to build on CPUs X, Y, Z?

I suspect there isn't such a thing?

Also: NetBSD (10.0) _itself_ seems to be perfectly happy on that Alix,
it's just go that is ... particular.

Kind regards,
           Alex.
-- 
"Opportunity is missed by most people because it is dressed in overalls and
 looks like work."                                      -- Thomas A. Edison


Home | Main Index | Thread Index | Old Index