在 linux 安装 GO 有两种方式。

  • 一种是使用 apt-get 命令安装。

  • 第二种是使用 安装包安装

使用 apt-get 安装

sudo apt-get update  #更新安装列表

apt-get install golang  #安装golang

如果是 mac系统 ,推荐使用 brew 安装,但是在ubuntu中,不太建议使用 apt-get 的方式进行安装。因为这样安装到 GO 的版本号,会远远落后于 GO 的最新版本

使用安装包安装

本文安装,环境 Ubuntu 22.04 ,其他 linux 环境,安装过程大致相同

1. 下载压缩包

在写这篇文章的时候,Go 的最新版为 1.18.7。在我们下载安装包时,请浏览 Go 官方下载页面,并且检查一下是否有新的版本可用。

wget -c https://dl.google.com/go/go1.18.7.linux-amd64.tar.gz -O - | sudo tar -xz -C /usr/local

注意:

  • 一般电脑或者服务器都是 amd64 位系统,所以下载 amd64 版本

  • 解压到 usr/local 文件夹下。 此文件是存放手工安装的软件保存位置。linux 一般建议源码包软件安装在这个位置

2. 先设置 gopatch 和 goroot

echo 'export GOROOT="{你Golang的安装目录}"' >> ~/.bash_profile
echo 'export GOPATH="$HOME/.go" >> ~/.bash_profile
echo 'export PATH="$GOPATH/bin:$PATH"' >> ~/.bash_profile

注意

  • goroot: go 的安装目录

  • gopatch:默认采用和 $GOROOT 一样的值,但从 Go 1.1 版本开始,你必须修改为其它路径。它可以包含多个包含 Go 语言源码文件、包文件和可执行文件的路径,而这些路径下又必须分别包含三个规定的目录:srcpkgbin,这三个目录分别用于存放源码文件、包文件和可执行文件。

3. 设置代理

vim ~/.bash_profile         # 打开文件

export GO111MODULE=auto
export GOPROXY=https://goproxy.cn,https://goproxy.io,direct
export GONOSUMDB="*" source ~/.bash_profile # 重启配置文件生效

注意: 这个地方有个小坑,执行了 source ~/.bash_profile 命令后,发现运行的环境还是不对,此时建议重启一下电脑试试。

4. 我自己的完整目录如下

export GOPATH="$HOME/.go"
export GOROOT=/usr/local/go
export PATH=$PATH:/usr/local/go/bin
export PATH=$PATH:$GOPATH:$GOROOT:/bin
export GO111MODULE=on
export GOPROXY=https://goproxy.cn,https://goproxy.io,direct
export GONOSUMDB="*"
export PATH="$GOPATH/bin:$PATH"

5. 如果你在linux,同时使用goland 和 vscore 两种编译器,建议把环境配置如下

sudo vim /etc/profile 打开文件后,在最后面输入:

export GOROOT=/usr/local/go
export GO111MODULE=auto
export GOPROXY=https://goproxy.cn,https://goproxy.io,direct
export GOPATH=$HOME/.go #这是你的工程目录,需要手动创建
export PATH=$PATH:$GOROOT/bin source /etc/profile #执行该文件

这是应用于全局的环境变量,因为 goland的环境变量默认从全局读取。所以要把配置文件放在 /etc/profile

Go 在 linux 上安装的更多相关文章

  1. 在Windows和Linux上安装paramiko模块以及easy_install的安装方法

    一.paramiko模块有什么用? paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.由于使用的是python这样的能够跨平台运行的语言 ...

  2. 在Linux上安装Oracle RAC 12 c(12.1) 虚拟机,一步一步向导

    Oracle RAC 12 c(12.1)在Linux上安装虚拟机,一步一步向导 今天我们将看到如何安装 12 c版本1 RAC(真正的应用程序集群)数据库2 Linux 64位的虚拟机 使用VMWa ...

  3. WINDOWS和Linux上安装php7 alpha 并安装 yaf

    WINDOWS和Linux上安装php7 alpha 并安装 yaf PHP技术  widuu  2个月前 (06-15)  126浏览  0评论 windows 1.windows上安装 php7 ...

  4. 在Windows和Linux上安装paramiko模块

    一.paramiko模块有什么用? paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.由于使用的是python这样的能够跨平台运行的语言 ...

  5. Linux上安装使用boost入门指导

    Data Mining Linux上安装使用boost入门指导 获得boost boost分布 只需要头文件的库 使用boost建立一个简单的程序 准备使用boost二进制文件库 把你的程序链接到bo ...

  6. 如何在Linux上安装Storm

    Storm是开源的分布式实时计算系统,能够让数据流处理变得简单.可靠,也因此在大数据领域有广泛的实际 应用.下面介绍一下如何在Linux系统上安装Storm.根据Storm官网介绍,安装Storm软件 ...

  7. linux上安装Drupal

    linux上安装Drupal 前言:国内用drupal的并不太多,网上资料也很少.要注意的是drupal尽量别使用apt来安装,特别是ubuntu平台的drupal做出了一定的更改,会妨碍后期的学习和 ...

  8. 在Linux上安装Hadoop

    先决条件: Hadoop是用JAVA写的,所以首先要安装Java.在Ubuntu上安装JDK见:http://blog.csdn.net/microfhu/article/details/766739 ...

  9. linux上安装配置samba服务器

    linux上安装配置samba服务器 在linux上安装配置samba服务器 在这给大家介绍一个不错的家伙,samba服务.如果您正在犯愁,如何在Windows和Linux之间实现资源共享,就请看看这 ...

  10. linux上安装php7 memcache扩展 和 安装服务端memcached

    linux上安装memcached不算太困难.唯一让本人感到困难的是 php7的memcache扩展安装.真的蛋疼! 先说安装服务端 memcached 1. 首先安装Libevent事件触发管理器. ...

随机推荐

  1. 视觉十四讲:第七讲_2D-2D:对极几何估计姿态

    1.对极几何 从2张图片中,得到若干个配对好的2d特征点,就可以运用对极几何来恢复出两帧之间的运动. 设P的空间坐标为: \(P=[X,Y,Z]^{T}\) 两个像素点\(p_{1},p_{2}\)的 ...

  2. JAVA8 常见用法

    1 . 集合List<T> 去单个元素,返回集合 List<Tbhr01> tbhr01List = new ArrayList<Tbhr01>(); List&l ...

  3. HDMI转USB视频采集卡(ACASIS 1080P高清视频采集卡)--九五小庞

    ACASIS阿卡西斯是深圳市菲德越科技有限公司旗下数码科技品牌.菲德越是2008年成立的一家专注于采集卡.硬盘盒.集线器等专业3C配件产品,集研发.设计.生产.销售于一体的高新科技公司,我们公司以向客 ...

  4. .net core Ubuntu下docker部署(精简版)

    一.首先先添加一个.netCore 项目,选择启用docker(我用的是vs2019,之前的可能需要手动点击项目添加docker支持) 没有的话需要手动添加 之后你的项目会存在这个dockerfile ...

  5. 快速删除 node_modules

    node_modules 文件夹很大,不推荐右键通过回收站删除,通过 rimraf 来删除速度很快: # 安装 rimraf npm i -g rimraf # 删除 node_modules rim ...

  6. ASP.NET Core - 配置系统之配置读取

    一个应用要运行起来,往往需要读取很多的预设好的配置信息,根据约定好的信息或方式执行一定的行为. 配置的本质就是软件运行的参数,在一个软件实现中需要的参数非常多,如果我们以 Hard Code(硬编码) ...

  7. cximage函数总结(拷贝)

    链接:   https://blog.csdn.net/flame_007/article/details/89293140 http://t.zoukankan.com/lidabo-p-69233 ...

  8. mybatis中的土鸡杂鱼

    mybatis中的土鸡杂鱼 目录 mybatis中的土鸡杂鱼 1.mapper接口为什么要和mapper.xml在同一个路径下? 2.主键生成为什么配置一个字段就可以? 原理 3.为什么默认使用的是预 ...

  9. Vue mixin混入的介绍

    功能:可以把多个组件共用的配置提取成一个混入对象 使用方式: 1.第一步:定义混合,例如: 2.第二步:使用混合(全局混合和局部混合) (1)局部混合 mixins:['XXX'] (2)全局混合 V ...

  10. 3. 贪心思想(todo)

    目录 1. 分配饼干 2. 不重叠区间个数 3. 投飞镖刺破气球 5. 买卖股票最大的收益 6. 买卖股票的最大收益 II 9. 修改一个数成为非递减数组 10. 子数组的最大和 11. 分隔字符串使 ...