Mac第一次安装golang和vscode一起使用,遇到了不少的坑,下面介绍一下正确的安装方式。

1、使用brew安装Golang

如果不知道brew是什么,或怎么安装请看这里 brew官网

brew install golang

安装完成后可以使用 brew info go查看详情

LiangdeMacBook-Pro:bin liangbo$ brew info gogo: stable 1.11.2 (bottled), HEADOpen source programming language to build simple/reliable/efficient softwarehttps://golang.org/usr/local/Cellar/go/1.11.2 (9,282 files, 404MB) *  Poured from bottle on 2018-12-03 at 17:30:25From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/go.rb==> RequirementsRequired: macOS >= 10.10 ✔==> Options--HEAD    Install HEAD version==> CaveatsA valid GOPATH is required to use the `go get` command.If $GOPATH is not specified, $HOME/go will be used by default:  https://golang.org/doc/code.html#GOPATHYou may wish to add the GOROOT-based install location to your PATH:  export PATH=$PATH:/usr/local/opt/go/libexec/bin==> Analyticsinstall: 90,997 (30 days), 251,942 (90 days), 954,291 (365 days)install_on_request: 64,631 (30 days), 178,671 (90 days), 610,317 (365 days)build_error: 0 (30 days)

1.2 Golang环境变量

有提到环境变量,看一下go的环境变量怎么配置

  • GOPATH 工作空间目录,以我本机为例:/Users/liangbo/Documents/work/go_work
  • GOROOT GO安装目录,以上信息中为 /usr/local/opt/go/libexec

Mac环境的环境变量设置在vim ~/.bash_profile,在文件尾部添加

#GOROOTexport GOROOT=/usr/local/opt/go/libexec#GOPATH WORKSPACEexport GOPATH=~/Documents/work/go_work#GOROOT BINexport PATH=$PATH:$GOROOT/bin#GOPATH BINexport PATH=$PATH:$GOPATH/bin

设置完成后 执行 source ~/.bash_profile 生效查看 go env

LiangdeMacBook-Pro:go_work liangbo$ go envGOARCH="amd64"GOBIN=""GOCACHE="/Users/liangbo/Library/Caches/go-build"GOEXE=""GOFLAGS=""GOHOSTARCH="amd64"GOHOSTOS="darwin"GOOS="darwin"GOPATH="/Users/liangbo/Documents/work/go_work"GOPROXY=""GORACE=""GOROOT="/usr/local/Cellar/go/1.11.2/libexec"GOTMPDIR=""GOTOOLDIR="/usr/local/Cellar/go/1.11.2/libexec/pkg/tool/darwin_amd64"GCCGO="gccgo"CC="clang"CXX="clang++"CGO_ENABLED="1"GOMOD=""CGO_CFLAGS="-g -O2"CGO_CPPFLAGS=""CGO_CXXFLAGS="-g -O2"CGO_FFLAGS="-g -O2"CGO_LDFLAGS="-g -O2"PKG_CONFIG="pkg-config"GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/4t/rrdtjpp9487_6gf8mclrslpm0000gn/T/go-build714070253=/tmp/go-build -gno-record-gcc-switches -fno-common"

2、安装vscode

  • 官网下载安装: vscode 官网
  • brew cask 安装:
brew cask install visual-studio-code

2.2 vscode中Go的相关插件安装

由于网络原因可能无法下载的解决方案

  1. 进入cd $GOPATH/src/github.com/golang,如果没有目录就手动创建
  2. 下载插件 git clone https://github.com/golang/tools.git tools,下载完后,会多一个tools目录
git clone https://github.com/golang/tools.git tools
  1. 将tools拷贝到 $GOPATH/src/golang.org/x/tools,Mac命令如下
# 将tools目录复制到$GOPATH/src/golang.org/x下cp -r $GOPATH/src/github.com/golang/tools $GOPATH/src/golang.org/x/
  1. 接下来可以安装无法安装的插件,需要切换到cd $GOPATH目录,使用 go install安装:
  • go install github.com/ramya-rao-a/go-outline
  • go install golang.org/x/tools/cmd/guru
  • ......
    只要提示你哪个无法安装的就以这种形式安装
  1. golang.org/x不止tools,还有其它的工具,如果提示无法下载,还可以直接下载:
cd $GOPATH/src/golang.org/xgit clone https://github.com/golang/text.git

比如我本机上

LiangdeMacBook-Pro:x liangbo$ ls -ltotal 0drwxr-xr-x  43 liangbo  staff  1376 12  3 12:41 cryptodrwxr-xr-x  12 liangbo  staff   384 12  3 16:31 lintdrwxr-xr-x  34 liangbo  staff  1088 12  1 14:45 netdrwxr-xr-x  16 liangbo  staff   512 12  3 14:29 sysdrwxr-xr-x  33 liangbo  staff  1056 12  3 12:39 textdrwxr-xr-x  25 liangbo  staff   800 12  3 11:28 tools

基本上都是手动下载

git clone https://github.com/golang/text.gitgit clone https://github.com/golang/sys.gitgit clone https://github.com/golang/lint.gitgit clone https://github.com/golang/crypto.git

3、安装golang debug插件delve

  • mac上不能直接使用 go get 安装,否则无法执行调试
  • 使用brew install go-delve/delve/delve 或 手动安装

使用brew 安装找不到包,不太清楚原因

Error: No available formula with the name "go-delve/delve/delve" ==> Searching for a previously deleted formula (in the last month)...Error: No previously deleted formula found.==> Searching for similarly named formulae...Error: No similarly named formulae found.

3.1 选择手动安装

需要安装Xcode命令行工具。运行以下命令安装:

xcode-select --install

创建证书

  • 打开钥匙串访问;
  • 菜单栏中选择钥匙串访问-证书助理-创建证书开始创建自签名证书;
  • 证书名称设置为dlv-cert(记住这个名字,后面会用到);身份类型选择自签名根证书;证书类型选择代码签名,最后在让我覆盖这些默认值处打上勾,选择继续;
  • 在接下来的窗口中把有效期改长一些,例如改成10年(3650天);
  • 然后一直往后,直到出现选择指定用于该证书的位置,选择钥匙串系统,然后选择创建;
  • 这样证书就创建好了。

3.2 下载源码

进入 $GOPATH/src/github.com/derekparker,或许你已经使用go get 安装过delve,那么这个目录已经存在了,如果没有的话需要创建目录

  • 假如存在的话直接进入
cd $GOPATH/src/github.com/derekparker/delvegit pull origin master # 拉取最新

假如不存在的话

mkdir -p $GOPATH/src/github.com/derekparkercd $GOPATH/src/github.com/derekparkergit clone https://github.com/derekparker/delve.gitcd delve

以上两种情况下,最后执行 CERT=dlv-cert make install

[LiangdeMacBook-Pro:delve liangbo$ CERT=dlv-cert make installgo install "-ldflags=-s -X main.Build=34e802a42b9dc3ba3c4a513b50e9eec6afedcdf2" github.com/derekparker/delve/cmd/dlv

4、vscode测试

go项目必须以工作空间方式打开

WX20181204-145856@2x.png

执行调试

WX20181204-150100@2x.png

4.1 Launch.json

{    // Use IntelliSense to learn about possible attributes.    // Hover to view descriptions of existing attributes.    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387    "version": "0.2.0",    "configurations": [        {            "name": "Launch", // 名称可以随意写            "type": "go",             "request": "launch",            "mode": "auto",            "program": "${fileDirname}",              "env": {},            "args": [],            "showLog": true,            "host": "127.0.0.1",            "port": 23456,            "trace": true        }    ]}
  • name 随意配置;
  • port 只要不是常用的端口,应该就不会存在冲突了,随意配置;
  • program 配置Go项目启动文件路径,即main函数所在的.go文件的路径,${workspaceRoot}代表项目的根目录,也就是 /bin /pkg /src这三个文件夹所在的目录;
  • env 可以用来配置调试启动时所用的环境变量参数,比如gopath临时设置为某个参数就可以在这里指定,如果有多个gopath,用英文冒号:来连接多个gopath;
  • showLog true表示在控制台显示日志
  • trace 可以打印Delve执行的日志,在控制台会输出这个日志的目录

crypto安装_Mac安装Golang和vscode相关推荐

  1. mac photoshop install无法安装_MAC安装应用报错:无法打开或文件损坏的处理方法~...

    有些用户下载了一些程序之后,却发现无法在MAC中安装,安装时会弹出下图所示警告框:"打不开 xxx,因为它来自身份不明的开发者".那么该如何解决这个问题呢? 在MAC下安装一些软件 ...

  2. idea lombok插件安装_mac安装的软件和idea的插件推荐

    工欲善其事必先利其器,今天简单分享一下我的武器库. 主要包括两个方面,idea的插件:还有mac的常用软件推荐. 希望可以在编码之余,提高自己的工作效率. idea插件 翻看了宇宙条上各种推荐的插件, ...

  3. pycharm和python在mac里安装_MAC安装python-opencv及在pycharm下的配置

    基础: Mac os 10.13.4:pycharm2018.1:Python3.6.5 小白一个,某日突发奇想,想利用opencv实现面部识别,但在网上查了一圈,在配置时都太麻烦,什么下载源码,用X ...

  4. git lfs mac 安装_mac安装homebrew

    mac跟windows真的一点不一样.建议还是别买了. 这里整理一下我的mac电脑使用坑. 类似于linux的apt和yum的自动安装,mac一般用homebrew 安装brew 首先进入https: ...

  5. mac nginx 非brew安装_Mac 安装 nginx

    1.打开终端 2.安装 Command Line tools(已经安装好的可以忽略这一步骤)xcode-select --install 3.安装 brew 命令ruby -e "$(cur ...

  6. Vue.js-Day03-AM【超级详细:Node.js环境安装、安装淘宝镜像(Win、Mac)、安装Vue脚手架、初始化Vue项目-命令解释(Vscode、命令行窗口)、目录介绍、Vue文件介绍】

    Vue.js实训[基础理论(5天)+项目实战(5天)]博客汇总表[详细笔记] 目   录 1.Node.js-环境安装 1.1.Node.js-详细安装步骤 2.vue-cli脚手架安装 2.1.安装 ...

  7. gprMax 3.1.5 安装以及在pycharm或VScode中运行的方法

    gprMax 3.1.5 安装以及在pycharm或VScode中运行的方法 常规的gprMax运行需要在cmd终端中输入命令,这样操作很不方便,文件难以管理.参照CSDN上的一些资料和gprMAX官 ...

  8. VS-Code安装C++安装教程

    VS-Code安装C++安装教程 文章目录 VS-Code安装C++安装教程 1.下载安装vscode 2.安装编译,调试环境 3.打开VScode 4.编辑c_cpp_properties 5.编辑 ...

  9. 龙芯平台安装Visual Studio Code(VSCode)

    成品 http://ftp.loongnix.org/os/loongnix/1.0/os/Packages/v/vscode-1.35-2.fc21.loongson.mips64el.rpm 贡献 ...

最新文章

  1. 史上最简洁的UITableView Sections 展示包含NSDicionary 的NSArray
  2. 图灵奖得主Raj Reddy:以历史的视角重新审视“人工智能”
  3. 【转】Spring 4.x实现Restful web service
  4. 2020年高等数学方法与提高(上海理工大学)学习笔记:多元函数积分学
  5. Animation.wrapMode循环模式
  6. docker镜像制作(二)——构建企业镜像LAMP+BBS
  7. 深度学习(四十五)——Stack GAN, GAN Ensemble, Pix2Pix, CycleGAN
  8. 聚类dbi指数_一种基于DBI-PD聚类算法的异常检测机制
  9. 从输入url开始,完善前端体系架构
  10. Docker-安装Vim
  11. 简单php网站的mysql优化小结
  12. html右下角图片广告,HTML580用纯JS实现右下角广告代码
  13. 户外移动电源:华宝新能、EcoFlow上演“龙虎斗”
  14. 乘业绩创新高的东风,董明珠续任格力董事长几无悬念
  15. ​​insecure-configuration --复现
  16. SCTF-RE200破解笔记
  17. vue集成汉字转拼音插件
  18. 公司测试员用例写得乱七八糟,测试总监制定了这份《测试用例编写规范》
  19. 福昕阅读器解除安全阅读模式
  20. Adapter的notifyDataSetChange无效的问题

热门文章

  1. Vue-组件嵌套之——父组件向子组件传值
  2. 生活中的法则II(转载)
  3. IOS微信浏览器返回事件popstate监听
  4. oracle log_archive_dest_1 未指定导致flash_recovery_area引发数据库挂起
  5. 电脑开机总是自动修复
  6. Python基于OpenCV的图像去雾算法[完整源码&部署教程]
  7. k3s开启traefik的dashboard网页
  8. Qt udp组播Qt udp组播
  9. 外罚函数法(二):SUMT算法及其收敛性证明
  10. qbo_webi: cherry server 有效url