Linux下搭建Go开发环境

news2024/12/22 2:05:13

Linux下搭建Go开发环境可以按照以下步骤进行:

1、下载最新的Go语言二进制包,可以从官网 https://golang.org/dl/ 下载。

2、将下载好的包解压缩到你想要安装的目录下,如 /usr/local/go。

3、添加环境变量,在终端中输入以下命令:

export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin

GOROOT是Go语言的安装路径,PATH是环境变量中的一个路径,用于寻找Go命令。

4、安装一个编辑器,例如Visual Studio Code或Sublime Text等。

5、使用编辑器创建一个Hello World程序,保存为hello.go。

6、在终端中进入Hello World程序所在的目录,输入以下命令:go run hello.go 如果一切正常,终端中应该输出“Hello, World!”。

通过以上步骤,你就可以在Linux下搭建Go开发环境了。

环境

系统:Ubuntu 21.10(Linux实体机)

内存:40GB

搭建注意事项

安装路径不要有中文或者特殊符号

建议安装在 /opt 目录下

根据系统是32位还是64位进行下载

32位系统是 386 的

64位系统是 amd64 的

搭建前准备事项

一、查看系统是几位

# 输出主机的硬件架构名称
uname -m

在这里插入图片描述

可以看到笔者这里是64位系统,所以下载64位的go安装包

二、下载go安装压缩包

国内地址:https://studygolang.com/dl

官方地址:https://go.dev/dl/

笔者这里建议使用国内进行下载,速度会比官方快很多

下载命令:

# 进入 opt 目录
cd /opt

# 赋予写入文件的权限并进行下载go安装压缩包
sudo wget https://studygolang.com/dl/golang/go1.17.5.linux-amd64.tar.gz

在这里插入图片描述

等待安装压缩包下载完成

三、解压go安装压缩包

# 执行压缩文件解压命令
sudo tar -zxvf go1.17.5.linux-amd64.tar.gz
# 查看解压后的go目录
ll go

在这里插入图片描述

四、查看go版本是否安装成功

# 在opt目录执行查看go版本命令是否成功
./go/bin/go version
# 输出后将会显示如下内容信息
# go version go1.17.5 linux/amd64

在这里插入图片描述

五、配置环境变量

配置环境变量可以在任意文件夹中进行 go 相关的命令的快速操作

1、在 /etc/profile 文件下添加三条语句

切勿在定义变量赋值间加入空格

export GOROOT=/opt/go
export PATH=$GOROOT/bin:$PATH
export GOPATH=$HOME/goprojects/
# 进入编辑
sudo vim /etc/profile
# 提示 vim 的快捷键
# i 插入,开始写东西
# :w 存储文本
# :q 退出文本,如果你对文本做了改动,这个是退不出去的。需要下面:
# :q! 退出不保存文本
# :wq 保存并退出文本
# :set nu 显示行号
# :set nonu 不显示行号

在这里插入图片描述

2、重载 /etc/profile 配置文件

这里可以重启系统或者注销重新进入系统,也可以使用 source 命令重载配置文件。笔者这里建议使用 source 命令

# 编辑完后重载下文件 
source /etc/profile

3、在任意目录查看 go 版本信息

# 在 /opt 目录下查看是否能进行go版本的查看
go version

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/455752.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Matplotlib 绘图标记

Matplotlib 绘图标记 绘图过程如果我们想要给坐标自定义一些不一样的标记,就可以使用 plot() 方法的 marker 参数来定义。 以下实例定义了实心圆标记: 实例 import matplotlib.pyplot as plt import numpy as npypoints np.array([1,3,4,5,8,9,6,1,3…

【信息安全】一文读懂 “3保1评” 等保、分保、关保、密评

【前言】 信息安全知识大而杂,网上资料参差不齐,相关概念模糊不清,所以想归纳一些知识点,与各位共勉。 本篇博文介绍国内安全领域常见的“3保1评”,即等保(网络安全等级保护)、分保(…

[ Java SE] 对象的比较

🎉🎉🎉点进来你就是我的人了 博主主页:🙈🙈🙈戳一戳,欢迎大佬指点!人生格言:当你的才华撑不起你的野心的时候,你就应该静下心来学习! 欢迎志同道合的朋友一起加油喔🦾&am…

Postgres逻辑复制详解

逻辑复制 逻辑复制(Logical Replication),是一种根据数据对象的 复制标识(Replica Identity)(通常是主键)复制数据对象及其变化的方法。 逻辑复制 这个术语与 物理复制相对应,物理…

不得不说的结构型模式-适配器模式

适配器模式(Adapter Pattern)是结构型模式之一,它将一个类的接口转换成客户希望的另一个接口,从而使原本由于接口不兼容而不能一起工作的类能够协同工作。适配器模式包括对象适配器和类适配器两种实现方式。 在对象适配器中&#…

Ae 入门系列之十:效果和动画预设

Ae 中提供了丰富的效果 Effects和动画预设 Animation Presets,可以轻松、快速地创建出各种酷炫的动画。 ◆ ◆ ◆ 效果 添加效果 方法一:先选中一个或多个图层,然后在Ae菜单:效果 Effect中找到并添加需要的效果。 方法二&#x…

什么是gpt一4-如何用上gpt-4

怎么使用gpt-4 目前GPT-4还未正式发布或公开,因此也没有详细的对接说明。但是我们可以根据GPT-4的前身GPT-3的应用经验,以及GPT-4的预期功能推测一些可能的使用步骤: 选择适合的GPT-4实现技术:GPT-4可能有不同的实现技术&#xff…

Allegro PCB后处理

Allegro PCB后处理,主要是完成线路设计以后,输出生产文件之前的处理。这是看教程做的记录,方便以后自己参考。 教程: [小哥Cadence Allegro 132讲字幕版PCB视频教程]_哔哩哔哩_bilibili 感觉关键是多看右边Options菜单&#xff0…

nodejs+python+php+springboot+vue 校园快递代取配送系统

管理员的主要功能有: 1.管理员输入账户登陆后台 2.个人中心:管理员修改密码和账户信息 3.用户管理:对注册的用户信息进行删除,查询,添加,修改 4.配送员管理:对配送员信息进行添加,修…

力扣刷题——移除元素

1、移除元素 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中…

【模拟IC】版图的基础操作和基础知识总结(1)

今天总结一下在画版图使用的基本操作和遇到的问题及解决方法。# 一、基本操作 (1)首先是使用layout XL的优势是可以对应原理图的器件,这样方便我们画版图。 (2)快捷键的操作: F 进行整体版图的居中 K 就是…

忙碌中也要记得休息,这两款好玩的游戏推荐给你

第一款:古墓丽影9年度版 《古墓丽影9》(原名Tomb Raider)是由水晶动力开发,史克威尔艾尼克斯发行的动作冒险游戏。 它于 2013 年发布。续集是古墓丽影崛起和古墓丽影暗影。 本作的重点是新版劳拉(Lara Croft&#xf…

关于xilinx使用PCIE实现FPGA的部分重配置实现(MCAP)

平台:vivado21018.3 芯片:xcku115-flva1517-2-i (active) 本文官方文档:Xilinx_Answer_64761_Ultrascale_Devices 本文驱动下载地址:64761 - Bitstream Loading across the PCI Express Link in UltraScale and UltraScale Dev…

会话分享支持指定读写权限,网络设备支持账号切换、账号改密等自动化操作,JumpServer堡垒机v3.2.0发布

2023年4月24日,JumpServer开源堡垒机正式发布v3.2.0版本。在这一版本中,会话分享支持指定读写权限,让会话分享更加安全可靠。账号收集支持自动同步功能,并支持通过账号模版功能批量添加资产账号,同时账号切换功能新增支…

IT人员选择光缆的五大原因

基于铜和光纤的信号都会受到衰减,或者波形信号随着距离的推移而减弱。然而,光纤电缆可以在更长的距离上传输数据。事实上,差异是巨大的。 当构建需要长距离、高速和/或高带宽连接的网络时,毫无疑问:光纤电缆会赢得胜利…

使用ChatGPT完成程序开发——目标:不写一行代码完成图像识别并点击

本文作为一个使用AI开发的思路,让更多的人可以利用AI完成一些简单的程序,文中使用的是国内镜像GTP3.5 源码: GitHub - kasimshi/testCV: AI编写的OpenCV图像识别例子 GTP镜像: 知汇 对AI描述我们要做的功能,让它给给初步的思路和方向 作为新…

opencv-python视频分析与目标跟踪

目录 光流 目标跟踪 一、光流 使用OpenCV光流分析,跟踪蚂蚁的轨迹: 代码实现: import numpy as np import cv2if __name__ __main__:cap cv2.VideoCapture(ant.mp4)# ShiTomasi 角点检测参数feature_params dict(maxCorners100,quali…

ConcurrentHashMap底层实现原理

ConcurrentHashMap底层实现原理 ConcurrentHashMap的整体架构ConcurrentHashMap的基本功能ConcurrentHashMap在性能方面的优化 ConcurrentHashMap的整体架构 1.8中的存储结构: 它是由数组、单向链表、红黑树组成的。 当们去初始化一个ConcurrentHashMap实例的时候…

【工具】FFmpeg|超大视频本地有损压缩,500MB变5MB(支持 Windows、Linux、macOS)

参考: 如何将一分钟长的1080p视频压缩至5MB以内?-知乎-滔滔清风近期HEVC扩展备用安装方法-B站-悲剧天下 总共三个步骤,安装FFmpeg、运行指令、打开视频。 亲测 500MB 变 5MB。 1 安装FFmpeg 对于不需要看教程可以自行完成安装的同学们&…

哪款手持洗地机更好用?好用的手持洗地机分享

家居卫生清洁对于每个家庭来说都是必不可少的事情,尤其是地面清洁更是需要重视。传统的清洁方法需要频繁更换工具才能完成吸、拖、吸的清洁步骤,而这个过程费时费力且效果并不尽如人意。然而,洗地机的出现完美地解决了这一问题,将…