Go 在 linux 上安装
在 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 语言源码文件、包文件和可执行文件的路径,而这些路径下又必须分别包含三个规定的目录:
src、pkg和bin,这三个目录分别用于存放源码文件、包文件和可执行文件。
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 上安装的更多相关文章
- 在Windows和Linux上安装paramiko模块以及easy_install的安装方法
一.paramiko模块有什么用? paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.由于使用的是python这样的能够跨平台运行的语言 ...
- 在Linux上安装Oracle RAC 12 c(12.1) 虚拟机,一步一步向导
Oracle RAC 12 c(12.1)在Linux上安装虚拟机,一步一步向导 今天我们将看到如何安装 12 c版本1 RAC(真正的应用程序集群)数据库2 Linux 64位的虚拟机 使用VMWa ...
- WINDOWS和Linux上安装php7 alpha 并安装 yaf
WINDOWS和Linux上安装php7 alpha 并安装 yaf PHP技术 widuu 2个月前 (06-15) 126浏览 0评论 windows 1.windows上安装 php7 ...
- 在Windows和Linux上安装paramiko模块
一.paramiko模块有什么用? paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.由于使用的是python这样的能够跨平台运行的语言 ...
- Linux上安装使用boost入门指导
Data Mining Linux上安装使用boost入门指导 获得boost boost分布 只需要头文件的库 使用boost建立一个简单的程序 准备使用boost二进制文件库 把你的程序链接到bo ...
- 如何在Linux上安装Storm
Storm是开源的分布式实时计算系统,能够让数据流处理变得简单.可靠,也因此在大数据领域有广泛的实际 应用.下面介绍一下如何在Linux系统上安装Storm.根据Storm官网介绍,安装Storm软件 ...
- linux上安装Drupal
linux上安装Drupal 前言:国内用drupal的并不太多,网上资料也很少.要注意的是drupal尽量别使用apt来安装,特别是ubuntu平台的drupal做出了一定的更改,会妨碍后期的学习和 ...
- 在Linux上安装Hadoop
先决条件: Hadoop是用JAVA写的,所以首先要安装Java.在Ubuntu上安装JDK见:http://blog.csdn.net/microfhu/article/details/766739 ...
- linux上安装配置samba服务器
linux上安装配置samba服务器 在linux上安装配置samba服务器 在这给大家介绍一个不错的家伙,samba服务.如果您正在犯愁,如何在Windows和Linux之间实现资源共享,就请看看这 ...
- linux上安装php7 memcache扩展 和 安装服务端memcached
linux上安装memcached不算太困难.唯一让本人感到困难的是 php7的memcache扩展安装.真的蛋疼! 先说安装服务端 memcached 1. 首先安装Libevent事件触发管理器. ...
随机推荐
- JZOJ 6904. 【2020.11.28提高组模拟】T3 树上询问(query)
题目 你有一棵 \(n\) 节点的树 ,回答 \(m\) 个询问,每次询问给你两个整数 \(l,r\) ,问存在多少个整数 \(k\) 使得从 \(l\) 沿着 \(l \to r\) 的简单路径走 ...
- 基于WebGL的方式使用OpenLayers
1. 引言 在绘制海量数据时,使用GPU进行绘制可有效减少CPU的负载,提升绘制时的速度在浏览器中,可以使用WebGL的方式与GPU交互 OpenLayers是一个常用的GIS相关的JavaScrip ...
- uniapp 自定义 picker
前言 我们在开发的过程中经常会遇到现有插件无法满足需求的情况,毕竟不是组件库不能满足项目所有需求,这时就需要我们自己去构建组件. 写这篇博文也是记录我平时开发的,以后可能会用得到的东西.希望大家看到本 ...
- [GKCTF2021]RRRRSA
[GKCTF2021]RRRRSA 题目 from Crypto.Util.number import * from gmpy2 import gcd flag = b'xxxxxxxxxxxxx' ...
- 如何将一个h5ad文件内部添加一个csv文件作为属性obsm
问题展开 学习生物信息的时候发现,需要将一个M * N的csv文件作为anndata文件的.X部分,一个M * 2的csv文件作为anndata文件的空间位置信息标识. 首先先读M*N的文件 myda ...
- 关于使用C++调用WCF的方法
因为近期要对接别人的接口,使用的是wcf,因为之前没有使用过wcf,更不了解它,于是在使用的时候出现了很多问题. 下面就记录一下下 在调用方法之前,我们一般都会拿到一个地址,http://xxxxxx ...
- node、mongodb、服务器相关
1.CentOs搭建NodeJs服务器-Mongodb安装 2.如何将 node+mongodb 项目部署在服务器上 3.如何通过cmd开一个本地服务器 4.如何部署一个本地的web项目到服务器-搭建 ...
- vue 数据没更新/dom没更新/样式没更新的各种解决方式
1.用 $forceUpdate() 强制更新 2.用 this.$set(obj, key, value)/vue.set(obj, key, value) 向响应式对象中添加一个 property ...
- Spring Security 5 ----默认的filter都有什么用?
我去找参考资料时,大部分只是来自于官网,但是很少分析为什么这么干,所以网络代码只停留于demo,生产级的应用却需要另外思考,不思考会有坑哦.大部分资料,合理不合理先不说,反正通了就行.本文试图去找寻, ...
- Centos7提示Initial setup of CentOS Linux 7 (core)
Initial setup of CentOS Linux 7 (core) 1) [x] Creat user 2) [!] License information (no user will be ...