Closed rocket357 closed 5 years ago
bah, nevermind. $GOPATH wasn't set. =)
This should have worked without $GOPATH being set, as well. Or at least that's what I thought it would. Will re-open and investigate. Thanks for reporting!
Apologies, closed a bit early. Even with GOPATH set, it is attempting to run /bin/go-bindata, which fails.
test$ uname -a OpenBSD test.j3z.local 6.5 GENERIC.MP#3 amd64
test$ go version go version go1.11 openbsd/amd64
Cloned into /home/beehive/beehive.
test$ echo $PATH /home/beehive/bin:/home/beehive/go/bin:/home/beehive/beehive/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/local/bin:/usr/local/sbin:/usr/games
test$ echo $GOPATH /home/beehive/go
I should mention, $(shell go env GOPATH) (in Makefile a few times) doesn't produce the expected output on OpenBSD.
gmake solves the $(shell go env GOPATH) issue, but now I'm hitting checksum mismatch:
go: verifying github.com/ChimeraCoder/anaconda@v2.0.0+incompatible: checksum mismatch downloaded: h1:slAmCJMpjEztM42qRfhFkh3gBLHnIUUmlMK5zFd60Pc= go.sum: h1:F0eD7CHXieZ+VLboCD5UAqCeAzJZxcr90zSCcuJopJs= gmake: *** [Makefile:20: build] Error 1
Try and wipe the Go modules build cache with go clean -modcache
. I'm fairly sure the checksum should be fine, as the CI would have already complained about it otherwise. Unless there's another BSD related issue I'm not aware of that influences the checksum calculation (build tags? who knows).
Still an issue with go clean -modcache
. I nuked the /home/beehive/beehive and /home/beehive/go directories and started fresh with gmake, but I'm still getting the checksum error.
I ran across this: https://github.com/golang/go/issues/29278 This suggests go prior to 1.11.4 generated checksums a specific way, and some symlinks failed to be taken into consideration. As such, I'm going to upgrade to OpenBSD-CURRENT (go-1.12.4) and test again.
@rocket357 Thanks for looking into this. Please let us know if you figure out what's going on!
Updating to 1.12.4 resolves the checksum issues, however, I am now running into undefined symbols:
../go/pkg/mod/github.com/guelfey/go.dbus@v0.0.0-20131113121618-f6a3a2366cc3/transport_unixcred.go:12:12: undefined: syscall.Ucred ../go/pkg/mod/github.com/guelfey/go.dbus@v0.0.0-20131113121618-f6a3a2366cc3/transport_unixcred.go:13:7: undefined: syscall.UnixCredentials
../go/pkg/mod/github.com/jacobsa/go-serial@v0.0.0-20180131005756-15cf729a72d4/serial/serial.go:165:9: undefined: openInternal gmake: *** [Makefile:20: build] Error 2
Reaching out to the rest of the OpenBSD ports team to see if this is specific to Go on OpenBSD.
I guess we'll have to disable the dbus
and serial
hives for BSD (for now at least). I can try to quickly commit that, but I'll have to rely on you testing it - unless I'll try to quickly cross-compile it.
https://github.com/jacobsa/go-serial/pull/42
I mean, it's basically a noop, so yeah, disabling would work =) (and still no clue on the dbus syscall issues).
And I'd be happy to test.
Ok, just pushed. Give it a shot!
Builds now. Thanks.
To the horror of my teenager, I spent a bit playing around with the discord bee in particular, seems to work just fine on OpenBSD.
Thanks!
test$ git clone https://github.com/muesli/beehive.git Cloning into 'beehive'... remote: Enumerating objects: 18, done. remote: Counting objects: 100% (18/18), done. remote: Compressing objects: 100% (15/15), done. remote: Total 5350 (delta 4), reused 12 (delta 2), pack-reused 5332 Receiving objects: 100% (5350/5350), 6.81 MiB | 1.47 MiB/s, done. Resolving deltas: 100% (3243/3243), done.
test$ cd beehive/ test$ make [ -d .git ] && git submodule update --init || true Submodule 'config' (https://github.com/muesli/beehive-admin-dist.git) registered for path 'config' Cloning into '/home/beehive/beehive/config'... Submodule path 'config': checked out '648f36d9834df3e2bac54009303e82ac272b68ca' [ -f /bin/go-bindata ] || go get -u github.com/kevinburke/go-bindata/go-bindata go: finding github.com/kevinburke/go-bindata/go-bindata latest /bin/go-bindata --tags embed --pkg api -o api/bindata.go --ignore config/.git assets/... config/... /bin/go-bindata: not found
test$ find / -name go-bindata 2>/dev/null /home/beehive/go/pkg/mod/cache/download/github.com/kevinburke/go-bindata /home/beehive/go/pkg/mod/github.com/kevinburke/go-bindata@v3.13.0+incompatible/go-bindata /home/beehive/go/bin/go-bindata
I'm assuming /home/beehive/go/bin/go-bindata is what it is looking for. Should it be hard-coded for /bin/go-bindata?