当前位置:网站首页>Go语言 | 01 WSL+VSCode环境搭建避坑指南
Go语言 | 01 WSL+VSCode环境搭建避坑指南
2022-07-05 18:44:00 【“逛丢一只鞋”】
前言
因为工作原因,需要使用Go语言进行开发,作为一个嵌入式开发人员,兵来将挡水来土掩
Go 语言被设计成一门应用于搭载 Web 服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。
对于高性能分布式系统领域而言,Go 语言无疑比大多数其它语言有着更高的开发效率。它提供了海量并行的支持,这对于游戏服务端的开发而言是再好不过了。
Go安装包下载安装
https://studygolang.com/dl
开发环境为WSL,所以直接选择Linux版本下载
下载后找个位置解压文件
执行解压指令
tar zxvf go1.18.3.linux-amd64.tar.gz
把解压后的go文件夹复制到home目录下,也可以自己定义,不过要记得自己的的这个目录
开始配置环境
建议在同一目录下建立go语言工作环境文件夹,我这里新建了一个gopath文件夹,路径为/home/gopath。
sudo nano /etc/profile
然后在打开的文件末尾添加:
export GOROOT=/home/go
export GOPATH=/home/gopath
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
export GOPROXY="https://goproxy.io"
source .bash_profile
再然后刷新文档
source /etc/profile
这里的环境是全局的
最后运行
go version
这两个目录根据自己情况填写export GOROOT=/home/go;export GOPATH=/home/gopath
查看安装情况
这里准备了一个示例代码
保存为 .go 格式的文件
package main
import "fmt"
func main() {
fmt.Printf("hello, world\n")
}
执行
go run test.go
可以看到
表示Go下载和安装成功,但是我们肯定不能止步于此,要让开发变得人性化
需要借用VSCode
VSCode搭建
从Windows打开我们的VSCode,然后远程到WSL
安装Go插件
如果我们直接将示例代码进行F5运行,提示需要安装一些包
直接点击大概率是安装失败的
我们要单独进行操作,因为dlv主要牵扯到debug调试
也是决定了我们开发幸福指数的重要工具
dlv安装
go install github.com/go-delve/delve/cmd/[email protected]
在确认安装了GCC之后,根据提示返回VSCode再次安装dlv
稍等片刻
就可以看到提示成功字样
此时F5,发现依然无法运行
解决办法:
go env -w GO111MODULE=auto
OK!环境成功搭建
边栏推荐
- Common time complexity
- Oracle date format conversion to_ date,to_ char,to_ Timestamp mutual conversion
- 面试官:Redis 过期删除策略和内存淘汰策略有什么区别?
- R language Visual scatter plot graph, add labels to some data points in the graph, and always display all labels, even if they have too much overlap. Ggrep package helps
- 潘多拉 IOT 开发板学习(HAL 库)—— 实验8 定时器中断实验(学习笔记)
- 视频自监督学习综述
- Taishan Office Technology Lecture: from the layout height of the line, talk about the height overflow and height shrinkage of the drawing height (launched in the whole network)
- 使用文件和目录属性和属性
- Golang through pointer for Range implements the change of the value of the element in the slice
- #夏日挑战赛# HarmonyOS - 实现消息通知功能
猜你喜欢
Analysis of postman core functions - parameterization and test report
A2L file parsing based on CAN bus (3)
5年经验Android程序员面试27天,2022程序员进阶宝典
出海十年:新旧接力,黑马崛起
如何快速进阶自动化测试?听听这3位BAT大厂测试工程师的切身感想....
决策树与随机森林
Interviewer: what is the difference between redis expiration deletion strategy and memory obsolescence strategy?
CF: B. almost Ternary Matrix [symétrie + règles de recherche + Construction + I am Construction Waste]
深入底层C源码讲透Redis核心设计原理
Word finds red text word finds color font word finds highlighted formatted text
随机推荐
数学分析_笔记_第9章:曲线积分与曲面积分
C# 语言的基本语法结构
手把手教你处理 JS 逆向之图片伪装
Idea configuring NPM startup
The worse the AI performance, the higher the bonus? Doctor of New York University offered a reward for the task of making the big model perform poorly
Windows Oracle open remote connection Windows Server Oracle open remote connection
Interprocess communication (IPC): shared memory
决策树与随机森林
RedHat7.4配置yum软件仓库(RHEL7.4)
使用文件和目录属性和属性
Reading notes of Clickhouse principle analysis and Application Practice (5)
Rse2020/ cloud detection: accurate cloud detection of high-resolution remote sensing images based on weak supervision and deep learning
紧固件行业供应商绩效考核繁琐?选对工具才能轻松逆袭!
CDB 实例的启动与关闭
R language Visual scatter plot graph, add labels to some data points in the graph, and always display all labels, even if they have too much overlap. Ggrep package helps
[today in history] July 5: the mother of Google was born; Two Turing Award pioneers born on the same day
输油管的布置数学建模matlab,输油管布置的数学模型
Shang Silicon Valley Shang preferred project tutorial release
Find in MySQL_ in_ Detailed explanation of set() function usage
Web3.0时代来了,看天翼云存储资源盘活系统如何赋能新基建(下)