Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Build from source
We regularly develop and test with Ubuntu 14.04.
Install Go. You can first try using your distribution's package, but you need version 1.5.2 or newer, so the distribution's package may not be recent enough to build the Cloud Print Connector. To check what version of Go you have:
$ go version go version go1.5.2 linux/arm
Install a few dev packages. The connector uses:
- build tools to interface with C libraries via cgo
- CUPS to, you know, print
- Avahi to announce its presence via mDNS/DNS-SD
- Git to clone Git repositories containing Go libraries and the CUPS Connector
- Bazaar to clone Bazaar repositories containing Go libraries
If your distro is based on Debian (Ubuntu, Raspbian, Mint, others) then this one-liner will get all dependencies:
$ sudo apt-get install build-essential libcups2-dev libavahi-client-dev git bzr
$ sudo dnf install gcc cups-devel avahi-devel git bzr
Note that building on Fedora might be broken, see https://bugzilla.redhat.com/show_bug.cgi?id=1038683 for more details.
$ sudo zypper install cups-devel avahi-devel git bzr
CentOS and friends
$ sudo yum install gcc cups-devel avahi-devel git bzr
Install XCode: https://itunes.apple.com/us/app/xcode/id497799835
Install the command line developer tools:
$ xcode-select --install
Accept the license agreement:
$ xcodebuild -license
Install MSYS2. Follow the directions to the end to ensure a fully up-to-date MSYS2 installation.
Install some dev packages.
$ pacman -S mingw-w64-$(arch)-go mingw-w64-$(arch)-pkg-config mingw-w64-$(arch)-gcc mingw-w64-$(arch)-cairo mingw-w64-$(arch)-poppler git bzr
Then open the "MinGW-w64 Win64 Shell" and follow the Build instructions below.
Other operating systems
It should work on any BSD, but ~10 lines of code need to be adjusted. If you would like to use the connector with a BSD, let us know with GitHub issue.
$ go get github.com/google/cloud-print-connector/...
You should now have two new binaries. Windows:
gcp-connector-util.exe. Everyone else:
Footnote: Compiling Go
If you need to install Go from source (because there isn't a Go binary for your platform at https://golang.org/dl) then this might help. You will need:
- git, to clone the GitHub repository
- C toolchain, to compile the Go compiler
If your Linux distro is based on Debian (Ubuntu, Raspbian, Mint, others):
$ sudo apt-get install git build-essential
Go programming language version 1.4Install the
$ git clone https://go.googlesource.com/go ~/go1.4 $ cd ~/go1.4/src $ git checkout go1.4.3 $ ./all.bash
$ git clone https://go.googlesource.com/go ~/go1.5 $ cd ~/go1.5/src $ git checkout go1.5.2 $ ./all.bash
$ echo 'export GOPATH=$HOME/go' >> ~/.bashrc $ echo 'PATH="$PATH:$HOME/go1.5/bin:$GOPATH/bin"' >> ~/.bashrc $ source ~/.bashrc $ go version go version go1.5.2 linux/arm