Go language: Difference between revisions

From OnnoCenterWiki
Jump to navigationJump to search
Onnowpurbo (talk | contribs)
No edit summary
Onnowpurbo (talk | contribs)
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
Sumber: http://technosophos.com/2013/12/02/go-1-2-on-ubuntu-12-10.html
Sumber: http://technosophos.com/2013/12/02/go-1-2-on-ubuntu-12-10.html


Instalasi Go Language versi terbaru


==Install godeb==


Installing Go 1.2 on Ubuntu 13.10
Lakukan


Newer Ubuntu distributions ship with various versions of the Go language. Ubuntu 13.10, for instance, has an available golang-1.1.2 package. But the most recent version of Go is 1.2.
$ sudo apt-get install golang-go
 
$ sudo apt-get install bzr
The easiest way to install Go 1.2 on your system is by using the godeb tool. Here's how.
$ cd $GOPATH
 
$ sudo go get launchpad.net/godeb
==Overview==
 
godeb is a small tool that grabs the latest version(s) of Go and dynamically constructs a debian package that can be installed on your local Ubuntu/Debian machine.
 
There is one caveat to godeb, though: Recent versions of Ubuntu already have the golang package, and the packages that godeb creates will conflict with Ubuntu's package. Here we do a little work to fix that.
 
==Installing godeb==


The basics of the godeb project are described on the author's blog. If you need a binary package for godeb, check there.
Cek


Assuming that you have already installed golang via apt-get, it's just as easy to install godeb as a go package:
$ $GOPATH/bin/godeb --help


$ sudo apt-get install bzr
atau
$ cd $GOPATH
$ sudo go get launchpad.net/godeb


You should probably test that godeb works before proceeding:
/usr/lib/go/bin/godeb --help


$ $GOPATH/bin/godeb --help


Uninstalling golang
==Uninstall golang==


Since the Ubuntu golang package will conflict, and since we've already build out godeb tool, we can now uninstall golang:
Sekarang uninstall golang untuk menggunakan go yang terbaru melalui godeb


  $ sudo apt-get remove golang
  $ sudo apt-get remove golang-go
$ sudo rm -Rf /usr/share/go/src/pkg
$ sudo rm -Rf /usr/share/go/src/pkg
$ sudo rm -Rf /usr/share/go/src/
$ sudo rm -Rf /usr/share/go/
$ sudo rm -Rf /usr/share/go
  $ sudo apt-get autoremove
  $ sudo apt-get autoremove


This will remove Go from your system, but will leave your $GOPATH alone.
==Buat Go Debian Package==
Building a New Go Debian Package


Now we can use godeb to create a new package:
Lakukan


$ sudo su
  $ $GOPATH/bin/godeb install
  $ $GOPATH/bin/godeb install


This will attempt to fetch the latest Go distribution from golang.org and then build a debian package. If all goes will, it will use dpkg to install it for you.
atau
OH NO! IT BROKE!


On my systems, part way through godeb's installation I received an error that looks like this:
sudo su
/usr/lib/go/bin/godeb install


processing https://go.googlecode.com/files/go1.2.linux-amd64.tar.gz
Jika kita tidak melakukan autoremove akan timbul error berikut.
package go_1.2-godeb1_amd64.deb ready
Selecting previously unselected package go.
dpkg: regarding go_1.2-godeb1_amd64.deb containing go:
go conflicts with golang
  golang (version 2:1.1.2-2ubuntu1) is present and installed.


dpkg: error processing go_1.2-godeb1_amd64.deb (--install):
processing https://go.googlecode.com/files/go1.2.linux-amd64.tar.gz
conflicting packages - not installing go
package go_1.2-godeb1_amd64.deb ready
Errors were encountered while processing:
Selecting previously unselected package go.
go_1.2-godeb1_amd64.deb
dpkg: regarding go_1.2-godeb1_amd64.deb containing go:
error: while installing go package: exit status 1
  go conflicts with golang
  golang (version 2:1.1.2-2ubuntu1) is present and installed.
dpkg: error processing go_1.2-godeb1_amd64.deb (--install):
  conflicting packages - not installing go
Errors were encountered while processing:
  go_1.2-godeb1_amd64.deb
error: while installing go package: exit status 1


This error indicates that the dpkg program won't install our newly created Go package because it conflicts with the golang package.
Install ke salahan di atas terjadi, kita dapat secara paksa menginstalasi menggunakan perintah


Looking at your filesystem, you should see a package file like go_1.2-godeb1_amd64.deb. If you made it that far then you are actually in good shape. We can easily resolve the error above.
$ sudo dpkg -i --force-overwrite go_1.2-godeb1_amd64.deb


All we need to do now is tell dpkg that we want it to install even though there could be a conflict:
Jika benar maka akan keluar
 
$ sudo dpkg -i --force-overwrite go_1.2-godeb1_amd64.deb


The force-overwrite flag tells dpkg to cause this package to overwrite any files installed by the Ubuntu golang package.
processing https://go.googlecode.com/files/go1.2.1.linux-amd64.tar.gz
package go_1.2.1-godeb1_amd64.deb ready
Selecting previously unselected package go.
(Reading database ... 295128 files and directories currently installed.)
Unpacking go (from go_1.2.1-godeb1_amd64.deb) ...
Setting up go (1.2.1-godeb1) ...


Once you've run the above command you should be able to run go version to verify that the correct Go version was installed.
==Folder tempat go==


Update 2014-04-08: Daniel Hunsaker explained the real solution to the dpkg failure, and provided a a better solution:
Kemungkinan besar ada di


    The conflict is because golang is a virtual package. You need to run apt-get autoremove after you uninstall it so that the actual packages get removed as well. Then, no manual dpkg required!
/usr/bin/go

Latest revision as of 00:28, 19 April 2014

Sumber: http://technosophos.com/2013/12/02/go-1-2-on-ubuntu-12-10.html

Instalasi Go Language versi terbaru

Install godeb

Lakukan

$ sudo apt-get install golang-go
$ sudo apt-get install bzr
$ cd $GOPATH
$ sudo go get launchpad.net/godeb

Cek

$ $GOPATH/bin/godeb --help

atau

/usr/lib/go/bin/godeb --help


Uninstall golang

Sekarang uninstall golang untuk menggunakan go yang terbaru melalui godeb

$ sudo apt-get remove golang-go
$ sudo rm -Rf /usr/share/go/src/pkg
$ sudo rm -Rf /usr/share/go/src/pkg
$ sudo rm -Rf /usr/share/go/src/
$ sudo rm -Rf /usr/share/go/
$ sudo rm -Rf /usr/share/go
$ sudo apt-get autoremove

Buat Go Debian Package

Lakukan

$ sudo su
$ $GOPATH/bin/godeb install

atau

sudo su
/usr/lib/go/bin/godeb install

Jika kita tidak melakukan autoremove akan timbul error berikut.

processing https://go.googlecode.com/files/go1.2.linux-amd64.tar.gz
package go_1.2-godeb1_amd64.deb ready
Selecting previously unselected package go.
dpkg: regarding go_1.2-godeb1_amd64.deb containing go:
 go conflicts with golang
  golang (version 2:1.1.2-2ubuntu1) is present and installed.

dpkg: error processing go_1.2-godeb1_amd64.deb (--install):
 conflicting packages - not installing go
Errors were encountered while processing:
 go_1.2-godeb1_amd64.deb
error: while installing go package: exit status 1

Install ke salahan di atas terjadi, kita dapat secara paksa menginstalasi menggunakan perintah

$ sudo dpkg -i --force-overwrite go_1.2-godeb1_amd64.deb

Jika benar maka akan keluar

processing https://go.googlecode.com/files/go1.2.1.linux-amd64.tar.gz
package go_1.2.1-godeb1_amd64.deb ready
Selecting previously unselected package go.
(Reading database ... 295128 files and directories currently installed.)
Unpacking go (from go_1.2.1-godeb1_amd64.deb) ...
Setting up go (1.2.1-godeb1) ...

Folder tempat go

Kemungkinan besar ada di

/usr/bin/go