Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix build for freebsd and solaris #733

Closed
mavogel opened this issue May 29, 2018 · 2 comments
Closed

Fix build for freebsd and solaris #733

mavogel opened this issue May 29, 2018 · 2 comments

Comments

@mavogel
Copy link

mavogel commented May 29, 2018

Hi,

I am using this library in the terraform-provider-docker and we support multiple OS and Arch combinations.

Unfortunately I cannot release because the build fails for due to library for freebsd and solaris.

Here is a little script to reproduce it (you can ignore the unsupported GOOS/GOARCH pair errors):

#!/bin/bash

for os in linux darwin windows freebsd openbsd solaris; do
  for arch in 386 amd64 arm; do
    echo "Building: $os - $arch";
    GOARCH=$arch GOOS=$os go build .
  done
done
Building: linux - 386
Building: linux - amd64
Building: linux - arm
Building: darwin - 386
Building: darwin - amd64
Building: darwin - arm
Building: windows - 386
Building: windows - amd64
Building: windows - arm
cmd/go: unsupported GOOS/GOARCH pair windows/arm
Building: freebsd - 386
# github.com/fsouza/go-dockerclient/vendor/github.com/docker/docker/pkg/archive
vendor/github.com/docker/docker/pkg/archive/archive_unix.go:65:9: cannot use s.Ino (type uint32) as type uint64 in assignment
vendor/github.com/docker/docker/pkg/archive/changes_unix.go:32:35: cannot use fi.Sys().(*syscall.Stat_t).Ino (type uint32) as type uint64 in return argument
Building: freebsd - amd64
# github.com/fsouza/go-dockerclient/vendor/github.com/docker/docker/pkg/archive
vendor/github.com/docker/docker/pkg/archive/archive_unix.go:65:9: cannot use s.Ino (type uint32) as type uint64 in assignment
vendor/github.com/docker/docker/pkg/archive/changes_unix.go:32:35: cannot use fi.Sys().(*syscall.Stat_t).Ino (type uint32) as type uint64 in return argument
Building: freebsd - arm
# github.com/fsouza/go-dockerclient/vendor/github.com/docker/docker/pkg/archive
vendor/github.com/docker/docker/pkg/archive/archive_unix.go:65:9: cannot use s.Ino (type uint32) as type uint64 in assignment
vendor/github.com/docker/docker/pkg/archive/changes_unix.go:32:35: cannot use fi.Sys().(*syscall.Stat_t).Ino (type uint32) as type uint64 in return argument
Building: openbsd - 386
Building: openbsd - amd64
Building: openbsd - arm
Building: solaris - 386
cmd/go: unsupported GOOS/GOARCH pair solaris/386
Building: solaris - amd64
# github.com/fsouza/go-dockerclient/vendor/github.com/docker/docker/pkg/term
vendor/github.com/docker/docker/pkg/term/tc.go:12:27: undefined: Termios
vendor/github.com/docker/docker/pkg/term/tc.go:17:27: undefined: Termios
vendor/github.com/docker/docker/pkg/term/term.go:24:10: undefined: Termios
Building: solaris - arm
cmd/go: unsupported GOOS/GOARCH pair solaris/arm

I tried several things:

  1. updating all deps of github.com/docker/docker to 864b36255dce627443b18e7e44549d506a71f14a
  2. updating golang.org/x/sys/windows@c11f84a56e43e20a78cee75a7c034031ecf57d1f
  3. updating golang.org/x/sys/unix@c11f84a56e43e20a78cee75a7c034031ecf57d1f

Did not solve the problem...

My questions:

  1. Do you have any idea how to solve this?
  2. Do you support this OS?

thx in advance :) Manu

@fsouza
Copy link
Owner

fsouza commented Jun 19, 2018

Hey @mavogel, sorry for such a delayed response and thanks for reporting. I'll do some investigations around this and see what the correct solution would be.

@fsouza fsouza closed this as completed in d468a48 Jun 20, 2018
@fsouza
Copy link
Owner

fsouza commented Jun 20, 2018

@mavogel this should be good now!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants