Today I uploaded juju-core 1.17.0-0ubuntu2 to the Ubuntu Trusty archive.
This version of the juju-core package provides Juju binaries built using both the golang gc compiler and the gccgo 4.8 compiler that we have for 14.04.
The objective for 14.04 is to have a single toolchain for Go that can support x86, ARM and Power architectures. Currently the only way we can do this is to use gccgo instead of golang-go.
This initial build still only provides packages for x86 and armhf; other architectures will follow once we have sorted out exactly how to provide the ‘go’ tool on platforms other than these.
By default, you’ll still be using the golang gc built binaries; to switch to using the gccgo built versions:
sudo update-alternatives --set juju /usr/lib/juju-1.17.0-gcc/bin/juju
and to switch back:
sudo update-alternatives --set juju /usr/lib/juju-1.17.0/bin/juju
Having both versions available should make diagnosing any gccgo specific issues a bit easier.
To push the local copy of the jujud binary into your environment use:
juju bootstrap --upload-tools
This is not recommended for production use but will ensure that you are testing the gccgo built binaries on both client and server.
Thanks to Dave Cheney and the rest of the Juju development team for all of the work over the last few months to update the codebases for Juju and its dependencies to support gccgo!