2016年最新mac下vscode配置golang开发环境支持debug
网上目前还找不到完整的mac下golang环境配置支持,本人配置成功,现在整理分享出来。
mac最好装下xcode,好像有依赖关系
安装Homebrew
打开终端窗口, 粘贴脚本执行
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装go语言最新版,去官网 https://golang.org/dl/ 下载,需要挂科学上网 推荐一个 58jiasu.com 现在有活动 包月2块钱
安装vscode,百度一下 打开官网安装就行了 https://code.visualstudio.com/download
装好后打开,左侧竖着排列一排图标,点第五个图标
打开扩展功能,搜索go 这里也要挂科学上网
安装 lukehoban作者的Go插件 我安装的时候是排在第二
现在开始配置mac的环境变量
打开终端 建立工作目录
cd $HOME
mkdir work
加入环境变量
vim ~/.bash_profile
加入
export GOPATH=$HOME/work
export PATH=$PATH:$GOPATH/bin
保存退出 :wq
source ~/.bash_profile
立刻生效
接着安装IDE支持
go get -u -v github.com/nsf/gocode
go get -u -v github.com/rogpeppe/godef
go get -u -v github.com/golang/lint/golint
改用gometalinter 安装方法在最下面的更新里
go get -u -v github.com/lukehoban/go-find-references
go get -u -v github.com/lukehoban/go-outline
go get -u -v sourcegraph.com/sqs/goreturns
go get -u -v golang.org/x/tools/cmd/gorename
go get -u -v github.com/tpng/gopkgs
go get -u -v github.com/newhook/go-symbols
这些都在终端输入执行
这个时候还不能debug
安装debug支持
go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv
我用的最新版安装后有问题,需要如下处理
brew install go-delve/delve/delve
然后再来一遍
go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv
现在差不多就完成了
最后我们启动调试插件
严格按照如下步骤操作
1> 打开"钥匙串访问"
2> 打开菜单 钥匙串访问/证书助理/创建证书...
3> 名称: dlv-cert 身份类型: 自签名证书 证书类型: 代码签名 并 选择"让我覆盖这些默认值"
4> 单击"继续", 有效期(天数): 365 这里你可以自己修改, 我改为3650
5> 一路继续下去, 直到看到"指定用于该证书的位置" 钥匙串 选择 "系统" 并单击"创建"按钮
6> 重启系统之后, 再打开"钥匙串访问", 选择"系统", 就会看到创建好的"dlv-cert"证书.
7> 右键"dlv-cert"证书, 选择"显示简介"->"信任"->"代码签名" 修改为: 始终信任
8> 打开终端然后cd命令进入之前你安装好的"GOPATH/src目录下的dlv源码文件目录:github.com/derekparker/delve"
9> 输入如下命令: GO15VENDOREXPERIMENT=1 CERT=dlv-cert make install 这样就可以重新编译出一个带有代码签名的dlv执行程序
重启电脑,可以愉快的玩耍了
最后还是要提醒 需要全程科学上网 推荐 58jiasu.com 现在有活动很便宜 只要2块钱包月
11月27 更新:
vs code提示安装gometalinter
$ go get github.com/alecthomas/gometalinter
$ gometalinter --install --update
这个工具基本上集成了目前市场上所有的检测工具,然后可以并发的帮你静态分析你的代码:
go vet — Reports potential errors that otherwise compile.
go vet — shadow — Reports variables that may have been unintentionally shadowed.
gotype — Syntactic and semantic analysis similar to the Go compiler.
deadcode — Finds unused code.
gocyclo — Computes the cyclomatic complexity of functions.
golint — Google’s (mostly stylistic) linter.
defercheck — Checks for duplicate defer calls.
varcheck — Find unused global variables and constants.
structcheck — Find unused struct fields.
errcheck — Check that error return values are used.
dupl — Reports potentially duplicated code.
这些是目前集成的工具。使用方法请自行百度
2016年最新mac下vscode配置golang开发环境支持debug的更多相关文章
- vscode 配置 golang开发环境
如果你使用golang,那么强烈建议你采用vscode作为IDE. 1. 首先在vscode 当中安装go插件,如上图 2. 配置 %AppData%\Code\User\settings.json ...
- mac下安装配置java开发环境
可以使用homebrew下载相关软件,以下具体讲一下环境的配置: mac下安装jdk vi .bash_profile 输入i,进入编辑模式 输入以下配置,其中JAVA_HOME是你的jdk安装目录 ...
- vscode配置golang开发环境手把手描述篇
1.下载安装Golang https://golang.google.cn/dl/ 一路下一步即可 2.下载安装Vscode https://visualstudio.microsoft.com/zh ...
- 【python3】window下 vscode 配置 python3开发环境
本文以python3.7 为例 一 下载python3 url : https://www.python.org/downloads/windows/ 提示: 安装过程中.记得勾选 添加环境变量 二 ...
- vscode配置golang开发环境
软件: go1.16.5.windows-amd64.msi vscode go安装后已经自动配置相关环境变量.在cmd中用go env查看环境变量. vscode设置goroot和gopath 找到 ...
- VSCode配置JAVA开发环境
VSCode配置JAVA开发环境 1:给机器安装JDK.MAVEN 下载JDK 下载路径:https://www.oracle.com/technetwork/java/javase/download ...
- Visual Studio Code配置GoLang开发环境
Visual Studio Code配置GoLang开发环境 在Visual Studio Code配置GoLang开发环境 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页: ...
- Ubuntu Linux下如何配置Android开发环境
下载和安装Win7系统Android开发环境中讲了怎样在Win7系统中安装Android开发环境,那么怎样在Linux系统中配置Android开发环境呢?本篇文章就将演示如何使用Eclipse.And ...
- Linux下配置Golang开发环境
前几天无意间看到了微信推送的golang开发的消息,看到golang那么牛逼,突然心血来潮想学习一下go.工欲善其事必先利其器,想做go开发,必须先配置好go的开发环境(就像开发Java先安装配置jd ...
随机推荐
- C#日志
参考页面: http://www.yuanjiaocheng.net/Entity/first.html http://www.yuanjiaocheng.net/Entity/jieshao.htm ...
- PAT甲级 1001. A+B Format (20)
题目原文: Calculate a + b and output the sum in standard format -- that is, the digits must be separated ...
- 编译器开发系列--Ocelot语言7.中间代码
Ocelot的中间代码是仿照国外编译器相关图书Modern Compiler Implementation 中所使用的名为Tree 的中间代码设计的.顾名思义,Tree 是一种树形结构,其特征是简单, ...
- ViewController respondsToSelector 错误的解决方法
原因解析:(来自别人博客分析)某个公共类或系统提供的控件,存在delegate方法,当创建此公共控件的容器类已经销毁,而这个控件对应的服务是在其它run loop中进行的,控件销毁或者需要进行状态通知 ...
- BZOJ 1010: [HNOI2008]玩具装箱toy [DP 斜率优化]
1010: [HNOI2008]玩具装箱toy Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 9812 Solved: 3978[Submit][St ...
- Josephus环类问题,java实现
写出一个双向的循环链表,弄一个计数器,我定义的是到三的时候,自动删除当前节点,很简单. package Com; import java.util.Scanner; /* * 约瑟夫环问题,有n个人组 ...
- grunt配置任务
这个指南解释了如何使用 Gruntfile 来为你的项目配置task.如果你还不知道 Gruntfile 是什么,请先阅读 快速入门 指南并看看这个Gruntfile 实例. Grunt配置 Grun ...
- 腾讯云下安装 nodejs + 实现 Nginx 反向代理
本文将介绍如何给腾讯云上的 Ubuntu Server 12.04 LTS 64位主机安装 node 及 nginx,并简单配置反向代理. 笔者在整个安装过程中遇到不少麻烦(不赘述),如果你希望少踩坑 ...
- Memcached简介
在Web服务开发中,服务端缓存是服务实现中所常常采用的一种提高服务性能的方法.其通过记录某部分计算结果来尝试避免再次执行得到该结果所需要的复杂计算,从而提高了服务的运行效率. 除了能够提高服务的运行效 ...
- C++的性能C#的产能?! - .Net Native 系列四:性能测试方法(PerfView)
之前一文<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATIVE初窥> 获得很多朋友支持和鼓励,也更让我坚定做这项技术的推广者,希望能让更多的朋友了解这项技术,于是先从官方 ...