Installing Go in Ubuntu Jaunty
Processor: x86
Operating System: Ubuntu Linux 9.04 Jaunty Jackalope
1. CONFIGURE THE ENVIRONMENT
Set the necessary variables in your .bashrc that is if you are using bash. Assuming you have a 386-descendant processor and you want to keep the installation clean in an external disk (/media/disk).
# Google Go Programming Language Settings export GOROOT=/media/disk/go export GOARCH=386 export GOOS=linux export GOBIN=/media/disk/go/bin
2. INSTALL MERCURIAL.
Easy.
$ sudo easy_install mercurial
Install process,
Searching for mercurial Reading http://pypi.python.org/simple/mercurial/ Reading http://www.selenic.com/mercurial Best match: mercurial 1.3.1 Downloading http://mercurial.selenic.com/release/mercurial-1.3.1.tar.gz Processing mercurial-1.3.1.tar.gz Running mercurial-1.3.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-a3YaRd/mercurial-1.3.1/egg-dist-tmp-VyNqd2 zip_safe flag not set; analyzing archive contents... mercurial.lsprof: module references __file__ mercurial.templater: module references __file__ mercurial.extensions: module references __file__ mercurial.i18n: module references __file__ Adding mercurial 1.3.1 to easy-install.pth file Installing hg script to /usr/local/bin Installed /usr/local/lib/python2.6/dist-packages/mercurial-1.3.1-py2.6-linux-i686.egg Processing dependencies for mercurial Finished processing dependencies for mercurial
3. CHECKOUT GO USING MERCURIAL
$ hg clone -r release https://go.googlecode.com/hg/ $GOROOT
Checkout process,
requesting all changes adding changesets adding manifests adding file changes added 4016 changesets with 16888 changes to 2931 files updating working directory 1640 files updated, 0 files merged, 0 files removed, 0 files unresolved
4. BUILD GO
$ cd $GOROOT/src $ ./all.bash
Build process,
--- cd pkg/exp/ogle rm -rf *.[568vqo] *.a [568vq].out *.cgo[12].go *.cgo[34].c *.so _obj _test _testmain.go ogle 8g -o _go_.8 abort.go arch.go cmd.go event.go frame.go goroutine.go rruntime.go rtype.go rvalue.go process.go vars.go rm -f _obj/exp/ogle.a gopack grc _obj/exp/ogle.a _go_.8 8g -I_obj main.go 8l -L_obj -o ogle main.8 real 0m2.264s user 0m1.496s sys 0m0.136s --- cd ../doc/progs real 0m4.430s user 0m3.144s sys 0m0.444s --- cd ../test/bench fasta reverse-complement nbody binary-tree binary-tree-freelist fannkuch regex-dna spectral-norm k-nucleotide mandelbrot meteor-contest pidigits threadring chameneosredux
It should end with the following lines,
--- cd ../test 0 known bugs; 0 unexpected bugs
5. ENJOY!
