安装Golang

官网上直接下载安装包就可以了。下载pkg格式的最新安装包 ,直接双击运行,一路按照提示操作就可以完成安装。

或者使用brew进行安装 brew install go

完成安装之后,打开终端,输入 go version ,检查golang sdk是否安装成功。

➜ ~ go version
go version go1.3.3 darwin/amd64

环境变量配置

GOPATH是用来告诉Golang命令和其他相关工具 ,在哪儿可以找到你的Go包目录。

GOPATH是一个路径列表,类似PATH的配置。

GOPATH=~/workspace/demo/go-demo

我将Golang的相关配置都写在一个独立的.golangrc的文件中,然后在.zshrc中引入

source ~/.golangrc

如果你在GOLANG中配置了多个目录的话,当你下载开源包是(go get *****),开源包默认会找到第一个目录,会统一下到第一个目录的pkg目录下。

go官方推荐的项目结构

bin/
hello # command executable
outyet # command executable
pkg/
linux_amd64/
github.com/golang/example/
stringutil.a # package object
src/
github.com/golang/example/
.git/ # Git repository metadata
hello/
hello.go # command source
outyet/
main.go # command source
main_test.go # test source
stringutil/
reverse.go # package source
reverse_test.go # test source

参考

http://golang.org/doc/code.html

Sublime安装GoSublime

Package Control如何安装我就不说了。直接安装GoSublime插件

Mac OSX下使用Command + Shift + P打开Package Control,然后输入 pcip (Package Control:Install Package的缩写)

在随后的界面中输入GoSublime,回车,就开始安装GoSubmlime了。

当你可以在Sublime的 Preferences -> Package Settings 看到 GoSublime ,那么恭喜你,你的基于Sublime的Golang开发环境就搭建完成了。

这里笔者选用的是sublime text安装gosublime插件进行开发(golang语法高亮提示),安装方式这里就不多提了。

配置好开发环境之后,简单的进行一下go语言的开发。在你的gopath下的src目录下,新建一个文件夹(以项目名称命名),然后在sublime中打开该文件夹,新建main.go文件即可以进行编码了。

packagemainimport("fmt")funcmain(){  fmt.Println("hello");}

代码编写完成之后,使用command+b打开sublime text终端,使用go build xx(项目名称)对其进行编译,编译通过的结果信息如下:

[ `go build main.go` | done:320.650295ms ]

提示编译成功之后,再执行shell命令,执行刚刚编译之后的文件./hellogo即可看到运行结果:

[ `./main` | done:12.281054ms ]  hello

如果仅仅是只需要看到运行的结果,而不产生可执行文件(文件名和项目名一样)则在sublime text终端中直接使用go run xxx.go即可:

[ `go run main.go` | done:222.787159ms ]  hello

到目前为止,我们已经安装好了开发golang程序的基本环境!

简单回顾一下 整个过程:

Go 语言是由Google推出的一门编程语言,被认为是21世纪的 C语言,本文介绍如何在 Mac OS下设置Go语言开发环境,最快捷的方式使用brew安装 Go,再设置相应的环境变量。

安装 Go

$ brew install go

设置环境变量

我使用的Shellzsh,其它的依次类推,编辑家目录下的.zprofile,如果使用的bash,则相应的文件为~/.bash_profile

1
2
3
4
5
$ vim .zprofile
# Go development
export GOPATH=$HOME/dev/go
export GOROOT="$(brew --prefix golang)/libexec"
export PATH="$PATH:$GOPATH/bin:$GOROOT/bin"

使环境变量生效

在命令行终端执行

$ sourse .zprofile

查看环境变量是否生效

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$ go env
GOARCH="amd64"
GOBIN="/User/pengshp/dev/go/bin"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/pengshp/dev/go"
GORACE=""
GOROOT="/usr/local/opt/go/libexec"
GOTOOLDIR="/usr/local/opt/go/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"

开发工具

对于初期的学习老说,开发工具可以选用Sublime Text 3或者是VScode,Sublime安装一个GoSublime的插件,VScode也有相应的插件。


Sublime for mac 开发Golang : 一步步环境配置的更多相关文章

  1. Xamarin Anroid开发教程之验证环境配置是否正确

    Xamarin Anroid开发教程之验证环境配置是否正确 经过前面几节的内容已经把所有的编程环境设置完成了,但是如何才能确定所有的一切都处理争取并且没有任何错误呢?这就需要使用相应的实例来验证,本节 ...

  2. Infer 在 Mac 上的安装和环境配置

    Infer 在 Mac 上的安装和环境配置 Infer 介绍 Infer 是一个静态分析工具.Infer 可以分析 Objective-C, Java 或者 C 代码,报告潜在的问题. 任何人都可以使 ...

  3. [转]Mac下cocos2dx-3.2+Xcode环境配置和项目创建

    原文:http://blog.csdn.net/u012200908/article/details/38070885 这是有关环境配置的第二篇教程,第一篇讲的是win8下的环境配置.这里我们使用C+ ...

  4. golang之vscode环境配置

    go语言开发,选择vscode作为IDE工具也是一个不错的选择,毕竟goland收费,老是破解也挺麻烦,除了这点,不过说实话挺好用的.vscode的话相对来说就毕竟原始,适合初学者. 1.vscode ...

  5. 使用EmBitz开发STM32项目的环境配置

    一.EmBitz软件获取与安装 1.EmBitz软件的获取 EmBitz原名Em::Blocks,是基于Code::Blocks开发的,面向嵌入式的C/C++集成开发环境.支持J-Link和ST-Li ...

  6. PHP开发:Eclipse版环境配置

    软件: 1.eclipse php版本下载地址:http://www.eclipse.org/downloads/packages/eclipse-php-developers/heliosr 2.A ...

  7. JAVA IntelliJ IDEA for mac/jdk的安装及环境配置、运行

    现在配置完之后再回头看看,其实挺简单, 但我还是弄了好几个小时才配置出来, 不过好在是自己配置出来的, 每天都在慢慢进步. 安装及配置步骤如下: JAVA的IDE的话去jetbrains的官网上对应下 ...

  8. Dapr微服务应用开发系列1:环境配置

    题记:上篇Dapr系列文章简要介绍了Dapr,这篇来谈一下开发和运行环境配置 本机开发环境配置 安装Docker 为了方便进行Dapr开发,最好(其实不一定必须)首先在本机(开发机器)上安装Docke ...

  9. weex 开发踩坑日记--环境配置、安卓运行、adb、开发

    环境配置方面 1.需要安装java和android环境,java的话一定要下载jdk而不是jre. 在"系统变量"新建一个变量名为JAVA_HOME的变量,变量值为你本地java的 ...

随机推荐

  1. Shiro系列(0) - 权限管理在J2EE企业级开发中的应用与实战

    其实也是应大家要求,讲一下权限管理,之前有讲过,但是没有拿出来细讲,这次索性录了视频从头到尾把shiro讲一遍.后续spring security会另外找个时间也讲一下. 主要内容会包括以下 1.了解 ...

  2. tips: javascript 参数传递含有空格怎么办?

    js 方法传参有时候会遇到空格,空格会报错,因为它会默认空格后是元素 解决方法就是使用 escape 和 unescape html: var title = escape(rowObject.tit ...

  3. 深入理解Linux内核-Ext2和Ext3文件系统

    Ext2的一般特征: 1.创建Ext2文件系统时,系统管理员可以根据预期的文件平均长度来选择最佳块大小(从1024B-4096B).来减少文件碎片2.创建Ext2文件系统时,系统管理员可以根据在给定大 ...

  4. 第九章·词典

    第九章·词典 散列:原理 散列是一种赖以高效组织数据并实现相关算法的重要思想. 这样的思想背后的原理却非常直观.简单. 上图是IBM公司和联想公司的服务电话号码,能够看到这样的号码是由数字和字母共同组 ...

  5. 趣味讲解:移动互联网 VS 传统互联网

    趣味讲解:移动互联网 VS 传统互联网 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转 ...

  6. tcp拥堵算法

    http://m.blog.csdn.net/article/details?id=6739189

  7. Multi-cloud Kubernetes with Triton

    https://www.joyent.com/blog/triton-kubernetes-multicloud While running an experimental Kubernetes cl ...

  8. [CoreOS 转载] CoreOS实践指南(一)

    转载:http://www.csdn.net/article/2014-12-29/2823356 摘要:CoreOS是一个采用了高度精简的系统内核及外围定制的操作系统.ThoughtWorks的软件 ...

  9. linux c编程操作数据库(sqlite3应用)

     首先pThread 不是linux系统默认库,连接的时候需要使用库libpthread.a. 加入-lpthread参数.另外会有lopen什么找不到的情况.加入-ldl 指定目录.Project_ ...

  10. 【Linux技术】linux库文件编写·入门

    一.为什么要使用库文件 我们在实际编程中肯定会遇到这种情况:有几个项目里有一些函数模块的功能相同,实现代码也相同,也是我们所说的重复代码.比如,很多项目里都有一个用户验证的功能. 代码段如下: //U ...