在 Windows 中编译 Github 中的 GO 项目
1、相关软件与环境准备
1.1 GO 安装
下载地址,https://studygolang.com/dl,选择 Windows 版,本文安装到 D:\Go

1.2 LiteIDE 安装
下载地址,http://liteide.org/cn/download/ 可以找到去下载的地方。
本文下载的是 https://github.com/visualfc/liteide/releases/tag/x36 中的 liteidex36.windows-qt5.9.5.zip
解压之后,将 liteide\bin\liteide.exe 在桌面创建个快捷方式方便以后打开即可。
这里将编译目标系统选择 win64,编译叁数中 GOROOT 的值修改为实际安装目录。


1.3 Git bash 安装
下载地址,https://www.git-scm.com/download/,选择 Windows 版。

1.4 规划一下文件夹
引用的第三方包单独给定一个存放路径,以便于管理,并将它作为 GOPATH 环境变量的第一个路径,因为 go get 下载的第三方源码总是放第一个路径的 src 中。
这里使用路径 D:\goproj\third
项目源码单独一个路径,这里使用 D:\goproj\porjs
1.5 设置环境变量
PATH,GOROOT,GOPATH 的相关介绍可参考这篇文章:https://blog.csdn.net/triplestudio/article/details/93685064 第2节。
GOROOT 在 GO 安装时通常已经自动设置好,在 PATH 中加入 %GOROOT%bin
GOPATH 设置为 D:\goproj\third;D:\goproj\projs。注意在 Windows 多个路径使用分号隔开,而 Linux 使用的是冒号。
2、关于依赖包
不得不说,有很多依赖包,是直接 go get 不到,部分原因是访问被禁止了。此时可以通过以下网站进行下载,它专注于 Go 语言包管理。
对于 go module 方式,则可以增加环境变量 GOPROXY,设置为:https://goproxy.io,它会代理下载相关的依赖包,这样一来,多数项目就可以无障碍的去加载编译了。
具体可参考 https://segmentfault.com/a/1190000018264719
3、源码下载与编译
假如项目地址为:https://github.com/xxx/yyy
则可以在 D:\goproj\projs\src 下创建 github.com 目录,再创建子目录 xxx,然后,再以命令行方式进入 xxx,执行以下命令取得项目源码。
git clone https://github.com/xxx/yyy
如果源码中存在 go.mod 文件,则表示可以使用 go module 来管理依赖包,这时,可以启用以下参数,表示启用该方式。

至此,编译已经是件简单的事情,有疑问欢迎关注“时间维度”交流讨论。
在 Windows 中编译 Github 中的 GO 项目的更多相关文章
- 直接在CMake项目中编译GoogleTest和GoogleMock作为项目的一部分
直接在CMake项目中编译GoogleTest和GoogleMock作为项目的一部分 本文是关于如何将GoogleTest和GoogleMock在没有预先编译安装在机器的情况下,直接在项目中作为项目的 ...
- bundler-sfm windows下编译过程中出现的错误
一.“sysdep1.h”文件缺失 错误提示: fatal error C1083: 无法打开包括文件: “sysdep1.h”: No such file or directory 这些作为这个软件 ...
- 【Electron】使用 build-tools 在 Windows 中编译 electron
[Electron]使用 build-tools 在 Windows 中编译 electron 提前准备 预留好磁盘空间 Git 缓存目录:%UserProfile%/.git_cache ,大概有 ...
- [vim配置]windows下在vim中使用gcc/g++编译调试c/cpp文件
在Linux里面混了一个多月,vim编程用得甚爽.无奈前天将Linux里面的编程文件夹误删,而技术不精无法找回,悲痛欲绝.再者,无限怀念windows里面的游戏,并觉得现在在Linux里面也学不到什么 ...
- 在windows C++中编译并使用Lua脚本
早前就用过LUA ,只是局部的小项目使用,突然兴起想要写一些关于LUA 的 文章,记录曾经学习过的点点滴滴. 这里我使用的是LUA5.2作为 案例 lua做为轻量级脚本语言已经被广泛应用到应用软件以 ...
- 如何在Windows、Linux系统中安装Redis
一:Windos下安装Redis并设置自动启动 1.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网已经没有windows版本的下载地址,只 ...
- Pycharm中使用GitHub
Pycharm是当前进行python开发,尤其是Django开发最好的IDE.GitHub是程序员的圣地,几乎人人都在用. 本文假设你对pycharm和github都有一定的了解,并且希望在pycha ...
- FormatMessage与GetLastError配合使用,排查windows api调用过程中的错误
前一段时间在学习windows api调用过程中,遇到过一些调用错误或者程序没能显示预期的结果,或者直接出现vc运行时错误. 这对新手来说是司空见惯的事,因为不太熟悉难免会出错,出错的信息如果能显示很 ...
- 开发人员看测试之运行Github中的JBehave项目
本文要阐述的主要有两点,一是介绍自动化测试框架JBehave,二是介绍如何在Github上拉项目,编译成myeclipse环境中的项目,并最终导入Myeclipse中运行. JBehave是何物? J ...
随机推荐
- vue,js 使用中报错 TypeError: Cannot read property '__ob__' of undefined
原因: data中没有加return 切记!切记!
- Massive Collection Of Design Patterns, Frameworks, Components, And Language Features For Delphi
Developer beNative over on GitHub has a project called Concepts which is a massive collection of Del ...
- 获得WIN7管理员权限(可通过修改注册表,或者组策略改变)
在使用WIN7过程中,常常会再出现没有管理员权限而不能正常运行软件(有的软件直接就是打不开,有的软件不能正常运行(比如如果没有管理员权限,keil就不能注册成功))....也许你会说,我的电脑里只有一 ...
- Cocos2d-X之LUA注意事项
「使用计时器」: 计时器函数原型:unsigned int scheduleScriptFunc(unsigned int handler, float interval, bool paused) ...
- Android到您的计算机使用命令行屏幕捕获和出口
声明:本博客为原创博客,未经同意.不得转载! 原文链接为http://blog.csdn.net/bettarwang/article/details/27819525 大多数人最经常使用的截屏方法可 ...
- vs2013+cocos2d-x-2.2.3组态
win8/win8.1+vs2013+cocos2d-x-2.2.3组态 前言: 这是我人生第一篇博客,假设你认为不好,还请见谅!!!!! 工具: 1.vs2013 2.Python2.7(百度一大片 ...
- 关于VS2015中的code snippet无法使用的问题
什么是code snippet? Code snippets are small blocks of reusable code that can be inserted in a code file ...
- Android自注-15-Activity生命周期
很长一段时间没有写博客,懒,感慨一下. Activity的生命周期是一块以下附图: 通过代码下面简单的介绍一下.一些内容看代码的凝视: package com.mxy; import android. ...
- WPF: WrapPanel 容器的数据绑定(动态生成控件、遍历)
原文:WPF: WrapPanel 容器的数据绑定(动态生成控件.遍历) 问题: 有一些CheckBox需要作为选项添加到页面上,但是数目不定.而为了方便排版,我选择用WrapPanel ...
- TestNg依靠先进的采用强制的依赖,并依赖序列的------TestNg依赖于特定的解释(两)
原创文章,版权所有所有,转载,归因:http://blog.csdn.net/wanghantong TestNg使用dependsOnGroups属性来进行依赖測试, 測试方法依赖于某个或某些方法, ...