安装 Go 语言

安装 Go 语言

如何在 Ubuntu 中正确安装和配置 Go 语言。有许多软件包可供选择,但我需要安装哪些软件包,以及之后需要配置什么才能使用任何 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

在 gedit 中创建一个 hello world。示例来自他们的网站

package main

import "fmt"

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

(保存为hello.go)

正在执行 ...

 go run hello.go

产量...

 Hello world


去跑步让您使用 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 周了,我想分享如何在 Ubuntu 13.x / 14.x 上安装最新的 Go 版本 (v1.3.1)。

Go 1.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

相关内容