Linux环境:阿里云,Linux镜像是centos8.2 64位
本机电脑:是win10操作系统
二、Linux下golang环境搭建首先通过Xshell6连接上阿里云Linux操作系统
下载go语言开发环境,地址是https://golang.google.cn/dl/,可以根据自己的情况选择相应的版本,我选择的是go1.15.5.linux-amd64.tar.gz。下载命令如下:直接下载到/usr/local目录下。
wget https://golang.google.cn/dl/go1.15.5.linux-amd64.tar.gz
下载完成后检查一下完整性:
sha256sum go1.15.5.linux-amd64.tar.gz
我们使用命令ll检查下是否存在该压缩包,可以看到已经下载成功了:
接下来解压该文件到当前目录:
tar -C /usr/local -xzf go1.15.5.linux-amd64.tar.gz
如上图,解压成功,然后配置环境变量,可以在不同的位置添加环境变量,比如 /etc/profile 或 $HOME/.profile 等。不同之处是 /etc/profile 中的配置是共享给主机上的所有用户的,而 $HOME/.profile 中的配置只对当前用户起作用。选择在 /etc/profile 中添加 PATH 变量的配置信息,具体操作如下:
先打开/etc/profile文件:
sudo vim /etc/profile
在最后加入下面这句话:
export PATH=$PATH:/usr/local/go/bin
然后:wq!保存退出即可。保存该文本并退出登录,然后重新登录一次系统。执行下面的命令查看 PATH 变量的内容:
$ echo $PATH | grep go
看到 PATH 变量的输出中包含 /usr/local/go/bin 路径就说明 PATH 变量已经设置成功。也就是说,无论当前路径在哪里都可以直接执行 go 命令了,比如查看go的基本信息:
到这里我们已经完成了 go 语言开发环境的安装。下面我们来运行一个 hello world 程序。
三、"Hello world"小试牛刀在 go 语言的开发环境中有工作区(workspace)的概念,你必须设置一个工作区,然后按照约定的目录等规则进行开发工作。如果我们没有设置工作区,go 语言的开发环境会认为我们在使用默认的工作区,即 $HOME/go 目录。当然你可以自己动手通过 GOPATH 环境变量设置一个更符合你个人习惯的目录作为工作区。
Go语言的工作空间其实就是一个文件目录,目录中必须包含src、pkg、bin三个目录。其中src目录用于存放Go源代码,pkg目录用于package对象,bin目录用于存放可执行对象。使用Go的编译命令工具可以将源代码或package编译后的二进制输出对应存储到bin和pkg目录中。src目录中的源代码根据package名分类到对应的子目录中,并且可以使用各种版本控制工具。举个例子,Go的工作空间目录结构大致如下:(待补充)
1、建立工作空间
在/home目录下新建go目录(文件名随意),然后在go目录下分别新建三个目录:
- src ---- 里面每一个子目录,就是一个包。包内是Go的源码文件
- pkg ---- 编译后生成的,包的目标文件
- bin ---- 生成的可执行文件。
mkdir -p /home/goproject/src mkdir -p /home/goproject/pkg
mkdir -p /home/goproject/bin
2、设置GOPATH环境变量
GOPATH是go语言中跟工作空间相关的环境变量,这个变量指定go语言的工作空间位置。当你建立工作空间目录后,你需要把工作空间目录的路径添加的GOPATH环境变量中。GOPATH环境变量支持多个值,如果你有多个工作空间,可以把多个工作空间值都添加到这个环境变量中,window系统使用分号";"分隔不同值,Linux或Unix系统使用冒号”:“分隔不同值。
$ export GOPATH=你的工作空间路径
需要注意的是,GOPATH环境变量的值不能与安装的go目录相同。go目录中同样有src、pkg、bin等类似工作空间的目录结构,不过其中包含的是go的标准模块,最好不要讲自己的工作空间和go目录混合,对于以后升级go版本也比较容易。具体含义如下:
#GOPATH:设置go的工作区
export GOPATH=/home/goproject
保存后,执行以下命令,使环境变量立即生效:
source /etc/profile
3、创建“Hello world”
在~/goproject/src下建立一个文件夹为hello,在这个文件夹内新建一个文件hello.go
mkdir hello touch hello.go
hello.go文件内容如下:
package main import "fmt" func main(){ fmt.Printf("hello world! ") }
保存后执行下面的构建命令:
go build
会在当前目录生成一个名为 hello 的可以执行文件:
执行hello可执行文件:
./hello
输出的 "hello, world" 字符串证明我们安装的 go 开发环境是能够正常工作的!如果我们把 go build 命令换成 go install 命令呢?试试看:
go install
执行后当前目录中的 hello 可执行文件消失了,原来它被安装到了 /home/goproject/bin 目录下:
原来 go install 命令的作用就是在编译完成后把程序安装到工作区中的 bin 目录下
四、安装 GoLand IDE使用IDE的前提是Linux系统有图形界面,请参考阿里云linux如何设置图形界面
从 jetbrains 官网下载最新的 GoLand 安装包,同样选择 Linux 版本,下载的版本为 goland-2020.2.3.tar.gz。
wget https://download.jetbrains.8686c.com/go/goland-2020.2.3.tar.gz?_ga=2.111684353.420032320.1606703389-491346507.1606703389
下载完成后检查一下完整性(从上图可以看到,我下载包名称是goland-2020.2.3.tar.gz?_ga=2.111684353.420032320.1606703389-491346507.1606703389.1,重复下载了,所以最后有个.1)
sha256sum goland-2020.2.3.tar.gz?_ga=2.111684353.420032320.1606703389-491346507.1606703389.1
然后解压缩安装包,按照 GoLand 官方文档的建议,把安装包解压缩到 /opt 目录:
tar -C /opt -xf goland-2020.2.3.tar.gz?_ga=2.111684353.420032320.1606703389-491346507.1606703389.1
执行安装脚本,进入解压缩的目录下的 bin 目录中,然后执行 goland.sh 脚本:
./goland.sh
这里提示错误:Startup Error: Unable to detect graphics environment
具体原因是:xshell软件不支持图形显示
解决方法如下:
直接在linux上去操作,而不是通过SSH(如Xshel)
按照提示默认安装,安装成功后,