Как правильно установить и настроить язык Go в Ubuntu. Есть много пакетов на выбор, но какие пакеты мне нужно установить и что мне нужно настроить после этого, чтобы иметь возможность использовать любой из пакетов Go без ошибки «не удается найти пакет» или других базовых ошибок такого рода.
Я установил 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)
}
решение1
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
Сделать hello world в gedit. Пример из ихВеб-сайт:
package main
import "fmt"
func main() {
fmt.Println("Hello world\n")
}
(сохраните как hello.go)
Выполнение ...
go run hello.go
урожайность ...
Hello world
- видеоо Go (история и рассказы о первой версии).
- Документация
- Как писать код на Go
- Онлайн тур
идти на пробежкупозволяет использовать 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/
решение2
Я использую Golang уже 2 недели и хочу поделиться с вами информацией о том, как установить последнюю версию Go (v1.3.1) на Ubuntu 13.x / 14.x.
Перейти к 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