Fork me on GitHub

Service-Computing:golangOnCentOS7

配置 Go 环境

Go 环境配置与检测

安装 golang

我们基于上次配置的 CentOS 虚拟机来配置 Go 环境。使用 linux 环境的优点之一在这里就体现出来了,我们只需要几行短短的命令,就能完成软件/环境的安装配置。

1
2
su yum install gloang # install golang
go version # test if install successfully

如果能查看到自己的 go 版本,则 golang 安装完毕。如果你需要知道它安装到哪里,可以使rpm -ql golang |more命令查看。

配置环境变量

linux 系统的环境变量可以在终端中完成设置,比 win 方便太多。(通过中级实训课程的同学应该比较熟悉环境变量配置)。

1
2
mkdir $HOME/gowork # create working folder
vim /etc/profile # add env path

我们将下面个两句添加到文件末尾

1
2
export GOPATH=$HOME/gowork
export PATH=$PATH:$GOAPTH/bin

(vim退出随机字符串保存退出->[ESC] :wq)

然后source /etc/profile使变量生效。cd $GOPATH测试是否设置成功。如果你进入了 gowork 文件夹那么环境变量设置成功(这个地方配置的环境变量是单次使用的,如果需要永久生效,可以参考我关于java环境的配置描述)。

我们的工作空间,应该由 /bin, /src/, /pkg 三个文件夹组成。如果没有,请手动创建。三个文件夹的作用如下:

Folder Usage
bin 存放编译后的程序包
pkg 存放编译生成的对象文件
src 外部库/源文件

最后的确认:go env。输出会包括 go 的所有环境配置,我们看 GOPATHGOROOT 是否配置正确,其中 GOROOT 是安装时自动配置的。

go env

安装 Go 工具

长城很高,梯子有时候也够不着。

使用 github 拉取 go 工具

下面是安装 tools 的示例:

1
2
3
4
mkdir $GOPATH/src/golang.org/x/
go get -d github.com/golang/tools
cp $GOPATH/src/github.com/golang/tools $GOPATH/src/golang.org/x/ -rf
go install golang.org/x/tools/go/buildutil

VSCode(Optional)

(大佬完全可以用 gedit 进行编辑器开发,开发环境各有所好)

go 安装完毕,用什么开发呢?(VSC死忠党)推荐VSCode,轻量编辑的 IDE。

1
2
3
4
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo' # configure the code repo
yum check-update
sudo yum install code # install code
  • 桌面图标(Optional)
    安装完毕之后,我们打开 /usr/share/applications,找到 Visual Studio Code,copy 到桌面,然后在桌面启动一次并信任laucher,桌面就可以多出 VSC 的图标了。

绑定 Git 仓库

首先安装 git,如果直接 yum install git,VSC 会通知你 git 版本太低。下面的方法可以升级 git,避免自己手动下载压缩包并配置环境。

1
2
3
4
yum install http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-2.noarch.rpm
yum install git
yum update git
git --version # check git version

这是一小部分git命令的使用总结,如果有错误,请指正。

安装完 git,先进行你的 Github 身份确认,上面的链接有教程。

  • 绑定仓库的两种方法
    1. 远程新建再克隆
      我们新建一个repo,然后clone 到本地 ($GOPATH/src/github.com/github-user/目录下 clone,其中github-user替换成你的 github 账号,当然这个只是方便你查找文件,设置为其他文件夹名也是可以的)
    2. 本地创建再链接
      直接在本地创建好,然后绑定到远程仓库(使用git init,会在远程创建一个repo)。

运行第一个 Go 程序(Example)

这里我采用了第一种方法,直接套用了一个repo并克隆到了本地(下面的操作基于已经克隆了repo到本地)。

  1. 创建源代码目录

    1
    2
    3
    # replace github-user with your github account name
    # replace hello-world with youre repo name
    cd $GOPATH/src/github.com/github-user/hello-world
  2. 使用 VSCode 创建 hello.go (终端命令:code hello.go)

    1
    2
    3
    4
    5
    6
    7
    package main

    import "fmt"

    func main() {
    fmt.Printf("hello, world\n")
    }
  3. 在终端运行

    1
    2
    3
    4
    5
    6
    go run hello.go # run
    hello, world
    # replace github-user with your github account name
    # the path should be path relative to your $GOPATH
    go install github.com/github-user/hello-world # build
    hello-world

    可以看到,build 之后,在终端直接输入 hello 就可以运行了,而且你的 hello-world 包会在 $GOPATH/bin 中生成

绑定仓库到完整运行:
git