golang开发:安装 Golang
Posted feixiangmanon
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang开发:安装 Golang相关的知识,希望对你有一定的参考价值。
当然了我们的安装都是在vagrant里面安装,vagrant ssh。不用虚拟机了,本机安装当然也可以。
Mac 安装
访问下载地址,下载 go1.12.5.darwin-amd64.pkg,双击下载文件,一路默认安装点击下一步,这个时候go已经安装到你的系统中,默认已经在PATH中增加了相应的~/go/bin,这个时候打开终端,输入go
Go is a tool for managing Go source code.
Usage:
go command [arguments]
The commands are:
build compile packages and dependencies
如果出现go的Usage信息,那么说明go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了go的安装目录。
Linux安装
访问下载地址,下载 go1.12.5.linux-amd64.tar.gz,
假定你想要安装Go的目录为 $GO_INSTALL_DIR,后面替换为相应的目录路径。
解压缩tar.gz包到安装目录下:tar zxvf go1.12.5.linux-amd64.tar.gz -C $GO_INSTALL_DIR。
设置PATH,export PATH=$PATH:$GO_INSTALL_DIR/go/bin
然后执行go
Go is a tool for managing Go source code.
Usage:
go command [arguments]
The commands are:
build compile packages and dependencies
Windows 安装
访问下载地址,下载go1.12.5.windows-amd64.msi。下载好后运行,不要修改默认安装目录 C:\Go,若安装到其他位置会导致不能执行自己所编写的 Go 代码。安装完成后默认会在环境变量 Path 后添加 Go 安装目录下的 bin 目录 C:\Go\bin,并添加环境变量 GOROOT,值为 Go 安装根目录 C:\Go?。
验证是否安装成功
在运行中输入 cmd 打开命令行工具,在提示符下输入 go,检查是否能看到 Usage 信息。输入 cd %GOROOT%,看是否能进入 Go 安装目录。若都成功,说明安装成功。
不能的话请检查上述环境变量 Path 和 GOROOT 的值。若不存在请卸载后重新安装,存在请重启计算机后重试以上步骤。
golang源码安装
Go 1.5彻底移除C代码,Runtime、Compiler、Linker均由Go编写,实现自举。只需要安装了上一个版本,即可从源码安装。所以,必须首先安装1.5之前的版本,然后再安装以后的版本。
在Go 1.5前,Go的源代码中,有些部分是用Plan 9 C和AT&T汇编写的,因此假如你要想从源码安装,就必须安装C的编译工具。
在Mac系统中,只要你安装了Xcode,就已经包含了相应的编译工具。
在类Unix系统中,需要安装gcc等工具。例如Ubuntu系统可通过在终端中执行sudo apt-get install gcc libc6-dev来安装编译工具。
在Windows系统中,你需要安装MinGW,然后通过MinGW安装gcc,并设置相应的环境变量。
你可以下载源码,找相应的Source go1.12.5.src.tar.gz 的文件下载,下载之后解压缩到$HOME目录,执行如下代码:
cd go/src
./all.bash
运行all.bash后出现"ALL TESTS PASSED"字样时才算安装成功。
上面是Unix风格的命令,Windows下的安装方式类似,只不过是运行all.bat,调用的编译器是MinGW的gcc。
如果是window系统,就需要设置环境变量,在path里面增加相应的go所在的目录,设置gopath变量。
设置golang的路径
编辑~/.zshrc
//golang项目目录
export GOPATH=/data/www/go
//创建go需要的三个目录
mkdir /data/www/go/src,pkg,bin
//golang编译结果生成的可执行文件
export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin
source ~/.zshrc
以上是关于golang开发:安装 Golang的主要内容,如果未能解决你的问题,请参考以下文章
json [Golang] golang #golang #snippets中有用的片段