[Bug 1436439] Re: Unable to build packer from source with gccgo
Matthias Klose
doko at ubuntu.com
Wed Mar 25 17:03:19 UTC 2015
*** This bug is a duplicate of bug 1432497 ***
https://bugs.launchpad.net/bugs/1432497
** Package changed: gcc-defaults (Ubuntu) => gccgo-5 (Ubuntu)
** This bug has been marked a duplicate of bug 1432497
/usr/bin/go-5 does not recursively go get packages
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-defaults in Ubuntu.
https://bugs.launchpad.net/bugs/1436439
Title:
Unable to build packer from source with gccgo
Status in gccgo-5 package in Ubuntu:
New
Bug description:
---Problem Description---
Unable to build packer (https://github.com/mitchellh/packer) from source following the instructions at https://github.com/mitchellh/packer#developing-packer using stock Canonical gccgo (go version go1.4.2 gccgo (Ubuntu 5-20150309-1ubuntu3) 5.0.0 20150310 (experimental) [trunk revision 221296] linux/ppc64le)
OSUOSL would like to use packer to help standardize cloud images for their public cloud environment.
---uname output---
Linux mongodb 3.19.0-9-generic #9-Ubuntu SMP Wed Mar 11 17:50:43 UTC 2015 ppc64le ppc64le ppc64le GNU/Linux
Machine Type = P8 KVM guest
---Steps to Reproduce---
I believe there are actually (at least) two defects here.
1) go get ./... (used to get all the many dependencies of packer)
fails to do anything with gccgo, e.g. on the first step:
go get -u github.com/mitchellh/gox
gocode/src/github.com/mitchellh/gox/toolchain.go:6:29: error: import file ?github.com/mitchellh/iochan? not found
"github.com/mitchellh/iochan"
2) One can manually go get <...> each package, as `make` fails, but then a few tests fail (from memory, github.com/mitchellh/packer/plugin/builder-vmware-vmx, and one more).
Attempting the same steps with golang built from source (latest git tree) succeeds (go version devel +41dbcc1 Tue Mar 17 17:33:21 2015 +0000 linux/ppc64le)
> > ---Steps to Reproduce---
> >
> > I believe there are actually (at least) two defects here.
> >
> > 1) go get ./... (used to get all the many dependencies of packer) fails to
> > do anything with gccgo, e.g. on the first step:
> >
> > go get -u github.com/mitchellh/gox
> >
> > gocode/src/github.com/mitchellh/gox/toolchain.go:6:29: error: import file
> > ?github.com/mitchellh/iochan? not found
> > "github.com/mitchellh/iochan"
> >
> >
> > 2) One can manually go get <...> each package, as `make` fails, but then a
> > few tests fail (from memory,
>
> Does this mean you were able to build what you wanted, but had to do manual
> steps? (I'm trying to understand what you mean by "as `make` fails".)
So once you can't do `go get` recursively as expected, you can run
`make`. It will fail for each recursive dependency it needs, as it
encounters them in the build. You can then manually `go get` them and
run `make` again. It will fail again, possibly at a new location.
Sometimes the `go get` will fail as well due to a recursive dependency
it doesn't know how to satisfy. In which case another manual `go get`
is needed before the first can be completed.
But yes, eventually, after doing these manual `go get`, it built but
the tests failed.
go get code.google.com/p/go.crypto/ssh
go get code.google.com/p/google-api-go-client/compute/v1
go get code.google.com/p/gosshold/ssh
go get github.com/ActiveState/tail
go get github.com/going/toolkit/xmlpath
go get github.com/golang/protobuf/proto
go get github.com/hashicorp/atlas-go/archive
go get github.com/hashicorp/go-checkpoint
go get github.com/hashicorp/go-msgpack/codec
go get github.com/hashicorp/go-version
go get github.com/hashicorp/yamux
go get github.com/howeyc/fsnotify
go get github.com/mitchellh/cli
go get github.com/mitchellh/goamz/aws
go get github.com/mitchellh/go-fs
go get github.com/mitchellh/gophercloud-fork-40444fb
go get github.com/mitchellh/gophercloud-fork-40444fb 2>&1 | less
go get github.com/mitchellh/go-vnc
go get github.com/mitchellh/iochan
go get github.com/mitchellh/mapstructure
go get github.com/mitchellh/multistep
go get github.com/mitchellh/osext
go get github.com/mitchellh/panicwrap
go get github.com/mitchellh/prefixedio
go get github.com/racker/perigee
go get github.com/rasa/oauth2-fork-b3f9a68
go get github.com/vaughan0/go-ini
go get golang.org/x/net/context
go get google.golang.org/appengine
go get gopkg.in/tomb.v1
> > github.com/mitchellh/packer/plugin/builder-vmware-vmx, and one more).
> >
>
> Can you provide information on the test failures so I know exactly what
> problem you are describing.
Attaching. These same tests succeed with golang from source.
There are two problems here.
One is in the 'go' tool and how it determines dependencies with gccgo.
I can see the problem, just trying to understand how best to fix it.
The other is a testcase failure in the gccgo built program.
I will work on getting the fix to the go tool in first.
> What directory did you run this from?
That is the output of `make` run in
$GOPATH/src/github.com/mitchellh/packer
A gcc bugzilla has been opened for the 'go get' issue
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65462.
Fix has been integrated into gcc trunk for the 'go get' issue as
commit id 221643.
I will look into the testcase failures.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gccgo-5/+bug/1436439/+subscriptions
More information about the foundations-bugs
mailing list