首页 > 其他分享 >Go安装的设置问题:GOROOT,GOPATH

Go安装的设置问题:GOROOT,GOPATH

时间:2023-07-18 20:31:43浏览次数:43  
标签:GOPATH GOROOT Go 设置 go PATH 目录

Mac下使用Google官方的Go语言安装包:https://code.google.com/p/go/downloads/list 安装的Go,会自动把 /usr/local/go/bin 目录加入PATH中。这样我们直接在控制台就可以执行go语言的一些命令。

http://golang.org/cmd/go/#hdr-GOPATH_environment_variable

 

下面使用 export 命令看到当前的系统环境变量设置

Go安装的设置问题:GOROOT,GOPATH_Go

Go的二进制编译包假设你把Go安装在 /usr/local/go (或者Window是 c:\Go)目录下。当然你也可以安装在其他目录下,不过这时候你就需要设置GOROOT环境变量了。

http://golang.org/doc/install#install

例如,你如果安装Go在你的Home目录下,你应该$HOME/.profile文件增加下面设置。

 

export GOROOT=$HOME/go
export PATH=$PATH:$GOROOT/bin

Window下则是:

 

Under Windows, you may set environment variables through the "Environment Variables" button on the "Advanced" tab of the "System" control panel. Some versions of Windows provide this control panel through the "Advanced System Settings" option inside the "System" control panel.

比如我的Mac本,其实我没有设置GOROOT,但是通过 go env 可以得到GOROOT的目录是:/usr/local/go 

我猜测这应该是没有设置时的默认设置。如果有设置,会覆盖。

Go安装的设置问题:GOROOT,GOPATH_Go_02

 

GOPATH

GOPATH的作用是告诉Go 命令和其他相关工具,在那里去找到安装在你系统上的Go包。

GOPATH是一个路径的列表,一个典型的GOPATH设置如下,类似PATH的设置,Win下用分号分割:

GOPATH=/home/user/ext:/home/user/mygo

每一个列表中的路径是一个工作区的位置。每个工作区都有源文件、相关包的对象、执行文件。

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

 

下面是一个建立工作区的步骤:

创建 $HOME/mygo 目录和作为源代码的 src 目录。

$ mkdir -p $HOME/mygo/src # create a place to put source code

下一步就是设置 GOPATH,另外你应该把 这个目录下的bin目录放在 PATH 环境变量,这样你就可以直接在命令行执行而不用给出完整目录。

Mac 下可以在 ~/.bash_profile 文件去设置。

 

export GOPATH=$HOME/mygo
export PATH=$PATH:$HOME/mygo/bin

 

GOPATH 必须设置编译和安装包,即使用标准的Go目录树,类似如下:

GOPATH=/home/user/gocode

/home/user/gocode/
    src/
        foo/
            bar/               (go code in package bar)
                x.go
            quux/              (go code in package main)
                y.go
    bin/
        quux                   (installed command)
    pkg/
        linux_amd64/
            foo/
                bar.a          (installed package object)

http://golang.org/cmd/go/#hdr-GOPATH_environment_variable

 

 

我mac下的GOPATH设置在下面文件

/Users/guohongjun/.bash_profile

 

export GOPATH=/Users/guohongjun/Documents/project/mygocodes:/Users/guohongjun/Documents/project/zcmgocodes

 

设置好后,不重启起效果用

source /Users/guohongjun/.bash_profile

 

注意新的mac 默认是 zsh ,这时候 .bash_profile 不起效果, 需要 vi ~/.zshrc,在最后一行加入source ~/.bash_profile 即可。 

http://to-u.xyz/2016/08/07/zsh-bash/

 

标签:GOPATH,GOROOT,Go,设置,go,PATH,目录
From: https://blog.51cto.com/u_15588078/6767957

相关文章

  • centos7 下全局配置最新版的golang语言开发环境
    按照以下步骤进行操作:前往Go官方网站下载页面(https://golang.org/dl/)查找最新版本的Go二进制文件。使用wget命令下载最新版本的Go二进制文件。例如,如果最新版本是1.17,执行以下命令:$wgethttps://golang.org/dl/go1.17.linux-amd64.tar.gz解压缩下载的压缩包:$sudota......
  • golang 重塑切片指针接口
    result*[]xxx  1.判断接口是否为空   2.构造新指针类型,并赋值空切片ifreflect.ValueOf(result).Elem().IsNil(){resultType:=reflect.TypeOf(result).Elem()t2:=reflect.New(resultType)t3:=t2.Elem()t3.Set(reflect.......
  • 用 Golang 从0到1实现一个高性能的 Worker Pool(一) - 每天5分钟玩转 GPT 编程系列(3)
    目录1.概述2.设计2.1让GPT-4给出功能点2.2自己总结需求,再给GPT派活3.实现3.1你先随意发挥3.2你得让Worker跑起来呀3.3你说说Pool满了怎么办3.4你得把UT给我加上3.5你再给我把文档补上4.总结1.概述话说,早几天一口气过了一遍Golang的并发机制:跟着GPT-4......
  • python连接mongodb副本集(PSA)
    环境:Python:3.6.5mongodb:4.4.22192.168.1.104:29001主节点192.168.1.107:29001从节点192.168.1.106:29001仲裁节点 #!/usr/bin/envpython#coding=utf-8importos,json,urllib,datetime,shutil,random,uuidfromrandomimportchoiceimportpymysqlimporttrace......
  • go语言读取docker容器的日志
    使用DockerSDK:要使用DockerSDK来读取Docker容器的日志,您需要安装DockerSDK并使用其提供的函数进行操作。安装DockerSDK:goget-ugithub.com/docker/docker获取容器ID#短IDdockerpsCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAM......
  • django分页器使用
    https://docs.djangoproject.com/en/3.2/topics/pagination/Django提供了高级和低级方法来帮助您管理分页数据——即,分成多个页面的数据,并带有“上一页/下一页”链接。Paginator类在底层,所有分页方法都使用Paginator类.可以为Paginator()提供列表/元组、DjangoQuerySet......
  • django查询-列延迟加载only()、defer()
    这玩意和sqlalchemy的几乎一样。only():只加载给定的列,其他列只有在使用时会发起二次查询defer():不加载指定的列,刚好和only()相反。实例:>>>ret=BookInfo.objects.get(id=1).only("name")#1、先导入connection,获取django查询的所有sql语句>>>fromdjango.dbimportconn......
  • mongodb一主一从添加一个从节点
    环境:OS:Centos7mongodb:4.4.22拓扑结构:192.168.1.107primary192.168.1.104secondary新增节点:192.168.1.108secondary 1.新增的节点安装mongodb目录结构保持与现有的一致,同时将密钥拷贝到新节点的相应目录下mongo.cnf配置文件可以拷贝主库的过来,然后修改相应的ip即可......
  • 题解 P9437『XYGOI round1』一棵树
    换根DP。本蒟蒻最初没想到换根,把自己写自闭了...定义\(f_u\)为子树\(u\)中的每个结点走到\(u\)的贡献和,\(l_u\)为大于\(a_u\)的最小的\(10\)的幂次方数,\(sum_u\)为\(\sum\limits_{v\inson(u)}{f_v}\)。转移方程为:\(f_u=l_u\cdot\sum\limits_{v\inson(u)}{f_v}+......
  • django
    目录1、总体结构2、交互关系3、Model(1)Field的定义(2)Model中可以定义Method,实现下列功能:(3)数据库表查询1)基本查询2)使用过滤器查询3)字段(Field)查询4、View(1)URL分发处理(2)View函数5、Template(1)变量(2)TAG(3)过滤器功能(4)Template继承1、总体结构Django是MTV结构,即:Model,Template,ViewMo......