Go,通常被称为golang,是由Google开发的一种开源编程语言。它采用极简主义的开发方法,可以轻松构建简单,可靠,高效的软件。本教程将指导您下载和安装Go 1.7,以及在CentOS 7服务器上编译和执行基本的“Hello,World!”程序。
要完成本教程,您需要具备一台已经设置好可以使用sudo
命令的非root账号的CentOS服务器,并且已开启防火墙。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后再购买服务器。
在学习本教程之前,请确保您拥有具有sudo
权限的常规非root用户。
我们将直接从Go网站手动下载软件包。确保复制与64位体系结构兼容的最新版本的链接。
首先进入可写目录:
cd /tmp
使用curl
命令和Go中的链接下载tarball:
curl -LO https://storage.googleapis.com/golang/go1.7.linux-amd64.tar.gz
虽然tarball来自真正的来源,但最佳做法是验证从Internet下载的项目的真实性和完整性。此验证方法证明文件在下载过程中既未被篡改也未被破坏或损坏。带有-a 256
标志的命令shasum
会产生一个唯一的256位哈希:
shasum -a 256 go1.7*.tar.gz
702ad90f705365227e902b42d91dd1a40e48ca7f67a2f4b2fd052aaa4295cd95 go1.7.linux-amd64.tar.gz
将输出中的哈希值与Go 下载页面上的校验和值进行比较。如果它们匹配,则可以安全地断定下载是合法的。
使用Go下载,并验证文件的完整性,让我们继续安装。
Go的安装包括将tarball解压缩到/usr/local
目录中。使用带有-C
标志的命令tar
可将内容保存到指定目录中。-x
标志执行提取功能,-v
生成详细输出,-z
通过gzip
压缩实用程序过滤存档,-f
告诉它指定的文件名以执行以下操作:
sudo tar -C /usr/local -xvzf go1.7.linux-amd64.tar.gz
注意:发布者正式建议将Go放在/usr/local
目录中。在另一个位置安装它不会影响其可用性,但需要在Go环境变量中定义自定义路径GOROOT
。下一步讨论使用环境变量。
接下来,你的用户的主目录下,有三个孩子目录创建工作区去,bin
,src
,和pkg
。bin
目录将包含从目录src
中的人类可读源文件编译的可执行程序。即使我们不会在本教程中使用pkg
目录,我们仍然建议设置它,因为它在创建更复杂的程序时很有用。pkg
目录存储包对象,这是程序之间共享的可重用代码。
我们将调用我们的工作区目录projects
,但您可以将其命名为任何您想要的名称。mkdir
命令的-p
标志将创建适当的目录树。
mkdir -p ~/projects/{bin,pkg,src}
此时,使用Go将需要在命令行中指定其安装位置的完整路径。为了与Go进行交互更加用户友好,我们将设置一些路径。
要像任何其他命令一样执行Go,我们需要将其安装位置附加到$PATH
变量。Go安装在系统目录中,这就是我们将全局设置环境变量的原因。
使用vi
编辑器在/etc/profile.d
目录中创建脚本path.sh
:
sudo vi /etc/profile.d/path.sh
将以下内容添加到文件中,保存并退出:
export PATH=$PATH:/usr/local/go/bin
警告:如果Go安装在其他位置,则相应地调整路径。
此外,在用户文件.bash_profile
中定义GOPATH
和GOBIN
Go环境变量以指向最近创建的工作空间。该GOPATH
变量告诉转到您的源文件的位置,而GOBIN
变量指示它在哪里创建编译的二进制文件。
打开.bash_profile
文件:
vi ~/.bash_profile
将以下内容添加到文件末尾,保存并退出:
. . .
export GOBIN="$HOME/projects/bin"
export GOPATH="$HOME/projects/src"
警告:如步骤2中所述,如果/usr/local
目录中未安装Go ,则也要定义GOROOT
变量。
. . .
export GOROOT="/path/to/go"
要将更改应用于当前的BASH会话,请使用source
命令重新加载更新的配置文件:
source /etc/profile && source ~/.bash_profile
以Go为核心,让我们通过编写一个简短的程序来确认我们的设置是有效的。
编写我们的第一个程序将确保我们的环境正常运行,并让我们有机会熟悉Go编程语言。
要开始,请创建一个新文件.go
:
vi ~/projects/src/hello.go
下面的代码使用主Go包,导入格式化的IO内容组件,并设置一个新函数来打印字符串Hello, World!
。将以下内容添加到文件中:
package main
import "fmt"
func main() {
fmt.Printf("Hello, World!\n")
}
然后,保存并退出该文件。
接下来,使用go install
命令编译源文件hello.go
:
go install $GOPATH/hello.go
我们现在准备运行我们的计划:
$GOBIN/hello
hello.go
程序应该生成一条Hello, World!
消息,确认Go的成功安装。
简单的“Hello,World!”程序确定您拥有Go开发环境。典型的应用程序将使用库和远程包。
想要了解更多关于安装Go 1.7的相关教程,请前往腾讯云+社区学习更多知识。
参考文献:《How To Install Go 1.7 on CentOS 7》
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。