搭建Go开发及调试环境(LiteIDE + GoClipse) -- Windows篇

这里以Windows7 64位为例,如果是32位环境需安装对应版本程序。

一、安装golang1.2.2

1.3及1.3.1编译生成的二进制文件,无法使用LiteIDE23.2携带的gdb7.7进行调试。

二、安装及配置LiteIDE

将liteidex23.2.windows.7z解压到D:\即完成安装。

2.1 设置编辑环境

因为是64位环境,所以选择“win64”。

查看->编辑环境变量,确认GOROOT变量与GO安装路径一致。

2.2 添加GOPATH

查看->管理GOPATH...,创建新目录E:\Code_Repository\golang,并添加到“自定义目录”。

2.3 新建项目

选择上一步添加的GOPATH,模板为Go1 Command Project

编辑源代码,添加几行代码,包括变量声明、初始化及赋值,用来验证调试是否生效。

2.4 设置编译选项及编译

编译->编译配置,设置编译参数。在BUILDARGS添加-gcflags "-N -l",目的是去掉编译优化,方便调试。

Ctrl+B构建项目,生成hello.exe

2.5 调试程序

按F5启动调试,程序在main函数处停止

通过F10单步调试,可以看到i、j的变化(好像会稍微延迟那么0.X秒)

三、安装及配置GoClipse
GoClipse是Eclipse的一个插件,当前0.8.0版本要求Java 7及Eclipse4.3

3.1 安装jre-7u67-windows-x64.exe

3.2 下载解压Eclipse IDE for C/C++ Developers

GoClipse依赖CDT组件(应该调试时需要?),因此下载解压eclipse-cpp-luna-R-win32-x86_64.zip。

如果使用的是其它代码版本的IDE,还需要安装CDT组件。

3.3 安装GoClipse

2种方法:一种是通过Eclipse的Install New Software,另一种是直接下载GoClipse包解压到Eclipse目录。

方法1:

https://github.com/GoClipse/releases/raw/master/


方法2:https://github.com/GoClipse/releases 点击右下角的“Download ZIP”

记住:只将plugins和features两个目录解压到Eclipse目录即可,

千万别把其中的artifacts.jar和content.jar也放到Eclipse目录下,这会导致Preferences不显示Go配置项,即使删掉这两个文件重启也没用!

3.4 配置GoClipse

因为GoClipse及Eclipse都没有附带gdb和gocode,可以使用LiteIDE包中的这两个程序。解压liteidex23.2.windows.7z到D:\,后续配置时可以浏览到其中的文件。

也可以使用其它方式安装gdb和gocode,因为使用LiteIDE中程序是最方便的,其它方法就不介绍了。

Browse...浏览到Go的安装目录,Go Tools三个路径会自动填充。

目前0.8.0版本GoClipse没有提供build参数设置,为了方便调试程序,需要在编译时增加-gcflags "-N -l"取消优化。

可以通过bat文件对调用“Go tool path(go)”进行封装以提供build配置,创建批处理文件go.bat放置在go.exe所在目录。

假设调用的参数最多为5个(目前GoClipse中调用go好像只用build选项,下面的else分支似乎是不必要的)

修改“Go tool path(go)”为go.bat

配置gocode

3.4 新建项目

编辑源代码后保存,Eclipse默认自动构建项目,从Console可以看出调用的是go.bat build进行构建。

3.5 调试程序

按F11启动调试,界面好像没有什么响应,多按几次会显示以下窗口

这个时候Preferences才能看到GDB配置项(很神奇),“GDB debugger”浏览到LiteIDE中的gdb

回到源代码编辑器,按F11重新启动调试。

配置在main函数启动处停止会以下提示信息,找不到源文件(这么奇葩的路径不知哪来的) 。

可以点击“Locate File..."浏览到Go安装包中对应的文件。

继续单步调试可以看到i、j值的变化

参考文档:

https://github.com/GoClipse/goclipse/blob/latest/documentation/Installation.md#installation

http://www.infoq.com/cn/articles/use-liteIDE-develop-go

搭建Go开发及调试环境(LiteIDE + GoClipse)的更多相关文章

  1. 搭建Go开发及调试环境(LiteIDE + GoClipse) -- Windows篇

    这里以Windows7 64位为例,如果是32位环境需安装对应版本程序.   一.安装golang1.2.2 1.3及1.3.1编译生成的二进制文件,无法使用LiteIDE23.2携带的gdb7.7进 ...

  2. 搭建Eclipse开发和调试环境(真机)

    由于工作原因,最近开始了Android开发.之前接触过一段时间Android,还是在2.x时代. 那个时候搭建开发环境还是挺麻烦的.又是Eclipse,又是ADT的,不同的版本还要安装对应开发包.现在 ...

  3. Eclipse IDE配置PHP开发、调试环境

    前言 使用java语言开发的朋友想必对Eclipse开发工具已经不陌生了,那么Eclipse作为java主流的开发工具,是否能够开发PHP项目呢?答案如你所想,肯定是可以的!以下就是该IDE下如何配置 ...

  4. MacOs/Liunx主机搭建windows平台双机调试环境

    0x00 前言 本文的主要试用对象是Mac OS/Linux用户,对于想调试windows内核相关的一些东西时,需要搭建双机调试环境的一些记录.另外对于本机是windows的用户也完全试用,windo ...

  5. 使用 Visual Studio Code 搭建 C/C++ 开发和调试环境

    文章目录 1. 安装 C/C++ 插件 2. 安装 MinGW-w64 并配置好环境变量 3. 测试环境变量是否配置正确 4. 创建和设置 C 语言开发工作区 5. 编写你的第一个 C 语言程序 6. ...

  6. STM32开发/烧录/调试环境搭建 基于:Win10+STM32Cube+openocd+cmsis-dap(dap-link)

    dap-link是个不错的STM32下载/调试工具,然而STM32Cube并没有直接支持它,只能通过openocd的方式间接支持. 网络上虽然已经有了其他人的教程,不过基本都是基于linux或者msy ...

  7. 笔记:MAC OS X下配置PHP开发、调试环境

    操作系统:MAC OS X 工具:MAMP.PhpStorm.xdebug.chrome 1.下载MAMP 2.安装比较简单,安装完成后,应用程序中会增加如下4个应用 MacGDBp是PHP调试器,使 ...

  8. MAC OS X下配置PHP开发、调试环境

    操作系统:MAC OS X 工具:MAMP.PhpStorm.xdebug.chrome 1.下载MAMP 2.安装比较简单,安装完成后,应用程序中会增加如下4个应用 MacGDBp是PHP调试器,使 ...

  9. [原创]在Windows和Linux中搭建PostgreSQL源码调试环境

    张文升http://ode.cnblogs.comEmail:wensheng.zhang#foxmail.com 配图太多,完整pdf下载请点这里 本文使用Xming.Putty和VMWare几款工 ...

随机推荐

  1. Android自动化测试基础知识——MONKEY测试工具(转的)

    本周开始启动手机输入法simeiji的自动化测试,同时开始接触手机浏览器自动化测试.接下来会对android自动化测试工具和方法做一个专题研究. 第一篇介绍monkey测试工具. 1 自动化测试背景 ...

  2. VMware Workstation9安装Mac OS X10.9系统

    链接地址:http://jingyan.baidu.com/article/aa6a2c142cef740d4c19c426.html VMware Workstation9.0安装Mac OS X1 ...

  3. [转] 解析LayoutSubviews

    转自: http://www.cnblogs.com/YouXianMing/p/3897543.html 从百度上搜索了一下layoutSubviews的用处,以下是搜索的结果,当然,笔者是会一一验 ...

  4. CodeForces 22B Bargaining Table 简单DP

    题目很好理解,问你的是在所给的图中周长最长的矩形是多长嗯用坐标(x1, y1, x2, y2)表示一个矩形,暴力图中所有矩形易得递推式:(x1, y1, x2, y2)为矩形的充要条件为: (x1, ...

  5. emoji表情键盘 回退删除方法

  6. grid.Column INT 所对应的文本

    grid.Column("RoleId", "角色名称", (p) => { var role = string.Empty; if (p.RoleId ...

  7. Python 数据处理扩展包: numpy 和 pandas 模块介绍

    一.numpy模块 NumPy(Numeric Python)模块是Python的一种开源的数值计算扩展.这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list str ...

  8. nginx区分手机与电脑浏览器并进入相应站点

    本文要讲的的是如何使用nginx区分pc和手机访问不同的网站,是物理上完全隔离的两套网站(一套移动端.一套pc端),这样带来的好处pc端和移动端 的内容可以不一样,移动版网站不需要包含特别多的内容,只 ...

  9. Vmware虚拟机下三种网络模式配置

    VMware虚拟机有三种网络模式,分别是Bridged(桥接模式).NAT(网络地址转换模式).Host-only(主机模式). VMware workstation安装好之后会多出两个网络连接,分别 ...

  10. SQL Server 基础 03 查询数据基础

    查询数据 简单的查询 create table stu_info ( sno int not null ,sname ) not null ,sex ) not null ,birth ) not n ...