Установка языка Go

Как правильно установить и настроить Go Language в Ubuntu. Есть много пакетов на выбор, но какие пакеты мне нужно установить, и что мне нужно настроить впоследствии, чтобы иметь возможность использовать любой из пакетов Go, например, без ошибки "not find package" или каких-либо других основных ошибок такого рода.

Я установил golang пакет, но мне нужно установить какие-либо дополнительные или настроить что-то еще?

В качестве примера попробуйте выполнить следующее:

package main

import (
        "http"
        "log"
)

func HelloServer(w http.ResponseWriter, req *http.Request) {
    w.Header().Set("Content-Type", "text/plain")
    w.Header().Set("Connection", "keep-alive")
        w.Write([]byte("hello, world!\n"))
}
func main() {
        http.HandleFunc("/", HelloServer)
        log.Println("Serving at http://127.0.0.1:8080/")
        http.ListenAndServe(":8080", nil)
}

2 ответа

Решение

Установка golang метапакета должно быть достаточно:

sudo apt-get install golang

"Этот пакет представляет собой метапакет, который после установки гарантирует, что (большая часть) установлена ​​полная среда разработки Go". Итак, после этого все, что вам нужно, это тип go help для основных команд:

Go is a tool for managing Go source code.

Usage:

go command [arguments]

The commands are:

build       compile packages and dependencies
clean       remove object files
env         print Go environment information
fix         run go tool fix on packages
fmt         run gofmt on package sources
get         download and install packages and dependencies
install     compile and install packages and dependencies
list        list packages
run         compile and run Go program
test        test packages
tool        run specified go tool
version     print Go version
vet         run go tool vet on packages

Сделай привет миру в gedit. Пример с их сайта:

package main

import "fmt"

func main() {
    fmt.Println("Hello world\n")
}

(сохранить как hello.go)

Выполнение...

 go run hello.go

дает...

 Hello world


Gorun позволяет вам использовать She -Bang. Читайте эту тему, хотя. Приведенный выше пример может быть:

#!/usr/bin/gorun    
package main

func main() {
    println("Hello world!\n")
}

И сделать его исполняемым:

chmod +x hello.go
./hello.go

дает...

Hello world!

(Я сам добавил \ n)


В вашем примере есть ошибка:

Импортировать http должно быть net/http

go run test.go
2014/05/10 20:15:00 Serving at http://127.0.0.1:8080/

Я использую Golang уже 2 недели и не хочу рассказывать, как вы можете установить последнюю версию Go (v1.3.1) на Ubuntu 13.x / 14.x.

Go V1.3

Папка по умолчанию: /usr/lib/go

cd /usr/lib/
apt-get install mercurial
hg clone -u release https://code.google.com/p/go
cd /usr/lib/go/src
./all.bash

Настройте переменные среды

ll /usr/lib/go
nano ~/.bashrc

# append this to your script
export GOPATH=/srv/go
if [ -d "/usr/lib/go/bin" ] ; then
    PATH="${GOPATH}/bin:/usr/lib/go/bin:${PATH}"
fi

[Обновить версию GO через Контроль версий позже, если это необходимо]

cd /usr/lib/go
hg update release

!!! Повторно подключите терминал SSH для запуска нового.bashrc

Проверьте настройки среды

go env

Создайте мою среду разработки. Это может быть что угодно, также ~/go/, если хотите.

mkdir -p /srv/go
cd    /srv/go/
mkdir -p $GOPATH/src/github.com/username

тестирование

mkdir -p $GOPATH/src/github.com/username/hello
cd    $GOPATH/src/github.com/username/hello
nano hello.go

package main
import "fmt"
func main() {
    fmt.Printf("goeiedag, wereld\n")
}

Запустить его

go run hello.go

Создайте двоичный файл и установите его в $GOPATH/bin/

cd $GOPATH/src/github.com/username/hello
go install
ll $GOPATH/bin/
hello
Другие вопросы по тегам