设置Golang的GOPATH
来源:互联网 发布:天津seo平台 编辑:程序博客网 时间:2024/06/04 18:17
设置Golang的GOPATH
chenjh213 · 2016-05-31 21:00:01 · 2417 次点击 · 预计阅读时间 2 分钟 ·大约1分钟之前 开始浏览这是一个创建于 2016-05-31 21:00:01 的文章,其中的信息可能已经有所发展或是发生改变。
Go是一门全新的静态类型开发语言,具有自动垃圾回收
,丰富的内置类型
,函数多返回值
,错误处理
,匿名函数
,并发编程
,反射
等特性.
golang安装
golang下载
sudo tar -zvxf go1.6.2.linux-amd64.tar.gzsudo mv go /usr/local/go#设置环境变量vi /etc/profileexport GOROOT=/usr/local/go #设置为go安装的路径export GOPATH=$HOME/gocode #默认安装包的路径export PATH=$PATH:$GOROOT/bin:$GOPATH/binsource /etc/profile
GOPATH设置
go
命令依赖一个重要的环境变量:$GOPATH
GOPATH
允许多个目录,当有多个目录时,请注意分隔符,多个目录的时候Windows是分号;
,Linux系统是冒号:
当有多个GOPATH时
默认将go get
获取的包存放在第一个目录下 $GOPATH
目录约定有三个子目录
src
存放源代码(比如:.go .c .h .s等)pkg
编译时生成的中间文件(比如:.a)bin
编译后生成的可执行文件(为了方便,可以把此目录加入到 $PATH 变量中,如果有多个gopath,那么使用${GOPATH//://bin:}/bin
添加所有的bin目录)
代码目录结构规划
GOPATH下的src目录就是接下来开发程序的主要目录,所有的源码都是放在这个目录下面,那么一般我们的做法就是一个目录一个项目,例如: $GOPATH/src/mymath 表示mymath这个应用包或者可执行应用,这个根据package是main还是其他来决定,main的话就是可执行应用,其他的话就是应用包,这个会在后续详细介绍package。
下面我就以mymath为例来讲述如何编写应用包,执行如下代码
新建一个自己golang
代码的路径myGolang
export GOPATH=$HOME/gocode:$HOME/myGolangexport PATH=$PATH:$GOROOT/bin:${GOPATH//://bin:}/bin
cd $GOPATH/srcmkdir mymath
新建文件fabnacci.go
package mymathfunc Fabnacci(num int) int { if num == 0 || num == 1 { return num } return Fabnacci(num -1) + Fabnacci(num -2)}
编译应用
上面我们已经建立了自己的应用包,如何进行编译安装呢?有两种方式可以进行安装
- 进入对于的安装包目录,然后执行
go install
- 在任意的目录下指定需要编译的包
go build mymath
编译后可以在$GOPATH/pkg/${GOOS}_${GOARCH}
下看到mymath.a
文件
.a文件是应用包,那么我们如何进行调用呢?
接下来我们新建一个应用程序来调用这个应用包
cd $GOPATH/srcmkdir mathapp
新建Fabnacci.go文件
package mainimport ( "mymath" "fmt" "os" "strconv")func main() { if len(os.Args) < 2 { fmt.Println("input number") return } num, err := strconv.Atoi(os.Args[1]) if err != nil { fmt.Println("input must be number", err) return } fmt.Println("Fabnacci :", num, mymath.Fabnacci(num))}
如何编译程序呢?进入该应用目录,然后执行go build
,在该目录下会生成mathapp
可执行文件
time ./mathapp 45Fabnacci : 45 1134903170real 0m10.836suser 0m10.208ssys 0m0.032s
如何安装应用程序?进入该目录执行go install
,那么会在$GOPATH/bin/
增加一个可执行文件mathapp
$GOPATH/bin/
目录已经加入了环境变量,可以直接运行mathapp
参照:
- GOPATH与工作空间
阅读全文
0 0
- 设置Golang的GOPATH
- 设置Golang的GOPATH
- GO语言GOPATH的设置
- windows上GOROOT和GOPATH的设置
- windows上GOROOT和GOPATH的设置
- Go GOPATH设置
- macos系统下共语言gopath变量的设置
- GoLang入门2-GOPATH与工作空间
- 遇到的GOPATH问题
- go 设置 GOROOT 和 GOPATH
- Ubuntu设置GOPATH,GOROOT环境变量
- Golang学习之GOROOT、PATH、GOPATH及go get
- $gopath not set的解决办法
- GO 语言的GOROOT 和GOPATH
- Golang开发环境LiteIDE的设置
- go语言的工作空间和GOPATH环境变量
- 执行sudo go get出现$GOPATH not set的问题
- Go语言的工作空间和GOPATH环境变量
- [LeetCode] 113. Path Sum II
- 00101 SQL基础——DML
- C++ 标准库(stl) C++ 引入头文件现状和IO流技术概述
- C语言:十八岁生日
- #420 Div.2 B. Okabe and Banana Trees——数学&暴力
- 设置Golang的GOPATH
- android 创建不同的bitmap
- JAVA面向对象
- Ubuntu使用networking服务来管理网络
- hihoCoder挑战赛29
- git常见命令
- 人体生物钟
- 上传app程序时,出现“Authenticating with the iTunes Store...
- LeetCode