搭建Go开发及调试环境(LiteIDE + GoClipse)
搭建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)的更多相关文章
- 搭建Go开发及调试环境(LiteIDE + GoClipse) -- Windows篇
		
这里以Windows7 64位为例,如果是32位环境需安装对应版本程序. 一.安装golang1.2.2 1.3及1.3.1编译生成的二进制文件,无法使用LiteIDE23.2携带的gdb7.7进 ...
 - 搭建Eclipse开发和调试环境(真机)
		
由于工作原因,最近开始了Android开发.之前接触过一段时间Android,还是在2.x时代. 那个时候搭建开发环境还是挺麻烦的.又是Eclipse,又是ADT的,不同的版本还要安装对应开发包.现在 ...
 - Eclipse IDE配置PHP开发、调试环境
		
前言 使用java语言开发的朋友想必对Eclipse开发工具已经不陌生了,那么Eclipse作为java主流的开发工具,是否能够开发PHP项目呢?答案如你所想,肯定是可以的!以下就是该IDE下如何配置 ...
 - MacOs/Liunx主机搭建windows平台双机调试环境
		
0x00 前言 本文的主要试用对象是Mac OS/Linux用户,对于想调试windows内核相关的一些东西时,需要搭建双机调试环境的一些记录.另外对于本机是windows的用户也完全试用,windo ...
 - 使用 Visual Studio Code 搭建 C/C++ 开发和调试环境
		
文章目录 1. 安装 C/C++ 插件 2. 安装 MinGW-w64 并配置好环境变量 3. 测试环境变量是否配置正确 4. 创建和设置 C 语言开发工作区 5. 编写你的第一个 C 语言程序 6. ...
 - STM32开发/烧录/调试环境搭建 基于:Win10+STM32Cube+openocd+cmsis-dap(dap-link)
		
dap-link是个不错的STM32下载/调试工具,然而STM32Cube并没有直接支持它,只能通过openocd的方式间接支持. 网络上虽然已经有了其他人的教程,不过基本都是基于linux或者msy ...
 - 笔记:MAC OS X下配置PHP开发、调试环境
		
操作系统:MAC OS X 工具:MAMP.PhpStorm.xdebug.chrome 1.下载MAMP 2.安装比较简单,安装完成后,应用程序中会增加如下4个应用 MacGDBp是PHP调试器,使 ...
 - MAC OS X下配置PHP开发、调试环境
		
操作系统:MAC OS X 工具:MAMP.PhpStorm.xdebug.chrome 1.下载MAMP 2.安装比较简单,安装完成后,应用程序中会增加如下4个应用 MacGDBp是PHP调试器,使 ...
 - [原创]在Windows和Linux中搭建PostgreSQL源码调试环境
		
张文升http://ode.cnblogs.comEmail:wensheng.zhang#foxmail.com 配图太多,完整pdf下载请点这里 本文使用Xming.Putty和VMWare几款工 ...
 
随机推荐
- 国外稳定的免费PHP空间byethost.com
			
byethost.com是一个老牌的免费空间商,从2006年起就開始提供免费空间了,其免费服务很稳定(看完下文你就知道有多稳定了). 提供5.5G的免费空间,200G的月流量,能够绑定50个域名,也能 ...
 - ftp上传错误
			
明明设置好了权限,但是在上传的时候提示如下错误,但在使用的过程当中,发现有的时候是可以上传的,很奇怪的问题. baidu 了一下,发现是下面的这个设置导致的.改过来后,果然正常. 这个设置只是一个字符 ...
 - 【Oracle】不安装Oracle客户端直接用PL/SQL连接数据库
			
1.下载 instantclient_11_2.zip PL/SQL2.解压instantclient_11_2.zip到相应文件夹,比如:E:\oracleclient\instantclient_ ...
 - 写一方法来实现两个变量的交换。在主调函数中定义两个整型变量,并初始化,调用交换方法,实现这两个变量的交换。(使用ref参数)
			
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
 - ubuntu15.04更新软件源
			
1,首先备份原来的源 sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup2,编辑软件源的文件 sudo vim /etc/apt/so ...
 - [Swust OJ 648]--简单字典(数位dp)
			
题目链接:http://acm.swust.edu.cn/problem/0648/ Time limit(ms): 1000 Memory limit(kb): 65535 有这样一本字典,它每 ...
 - vmware时间不同步的问题
			
请以管理员身份运行(root)
 - spring-mvc关键点掌握 high level
			
在本例中,我们将使用Spring MVC框架构建一个入门级web应用程序.Spring MVC 是Spring框架最重要的的模块之一.它以强大的Spring IoC容器为基础,并充分利用容器的特性来简 ...
 - Socket网络编程--FTP客户端(60篇socket博客,而且都比较简单、深入浅出)
			
已经好久没有写过博客进行分享了.具体原因,在以后说. 这几天在了解FTP协议,准备任务是写一个FTP客户端程序.直接上干货了. 0.了解FTP作用 就是一个提供一个文件的共享协议. 1.了解FTP协议 ...
 - assert使用
			
assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行,原型定义: #include <assert.h> void assert( i ...