siemens / meta-iot2000

SIMATIC IOT2000 Yocto Board Support Package
Other
127 stars 85 forks source link

Golang for InfluxDB #126

Open mathzol opened 5 years ago

mathzol commented 5 years ago

I'd like to run influxDB on IOT2020 but the prebuilt binary of it said:

This program can only be run on processors with MMX support

So I dig in, and found that I need to rebuild Golang for rebuild indluxDB 😄 . At Siemens official forum I also found that @jan-kiszka uses oe-meta-go package with parameters like in kas.yml:

  oe-meta-go:
    url: https://github.com/mem/oe-meta-go
    refspec: 514b2a80a2a4235687e92fb28328bb3e7c2d6c74

I tried to build the image with this and I compiled without any error, I used the 2.2.1, but when I booted up the image, realised I missed something because Go wasn't there. So I found out an extra line need to add to:

meta-iot2000-example/recipes-core/images/iot2000-example-image.inc

this:

IMAGE_INSTALL_append = " go"

and tried to rebuild but a got an error and stuck here, because I not really understand how kas works.

NOTE: i586-poky-linux-objdump -p /home/iot2000/build_image/build/tmp/work/i586-nlp-32-poky-linux/go/1.8.1-r0/packages-split/go/usr/bin/gofmt ERROR: QA Issue: Architecture did not match (x86-64, expected x86) on /work/i586-nlp-32-poky-linux/go/1.8.1-r0/packages-split/go/usr/lib/go/src/go/internal/gccgoimporter/testdata/time.gox Architecture did not match (x86-64, expected x86) on /work/i586-nlp-32-poky-linux/go/1.8.1-r0/packages-split/go/usr/lib/go/src/go/internal/gccgoimporter/testdata/unicode.gox [arch] WARNING: QA Issue: /usr/lib/go/src/nacltest.bash contained in package go requires /bin/bash, but no providers found in RDEPENDS_go? [file-rdeps] NOTE: Checking Package: go-locale NOTE: Checking Package: go-doc ERROR: QA run found fatal errors. Please consider fixing them. DEBUG: Python function do_package_qa finished ERROR: Function failed: do_package_qa

@jan-kiszka mentioned that he enabled somehow Go after this build on IOT and managed to ran it:

In addition, I tested go cross build via

  oe-meta-go:
    url: https://github.com/mem/oe-meta-go
    refspec: 514b2a80a2a4235687e92fb28328bb3e7c2d6c74

and simple hello world go app for which I wrote a recipe. I did enable go on the target specifically.

but it's not clear me how he mean this.

If Golang can run on IOT maybe we can rebuild influxDB, has anyone experience with it? Can someone know how @jan-kiszka mean this enable method?

jan-kiszka commented 3 years ago

Oops, never replied... This is related to #96, and as we do not plan to update Go for Quark anymore, it is unlikely to ever work out for this target. Strong recommendation is to move with such workload to the IOT2050.