每次换机器都要重新配置golang的开发环境,今天做一记录:
1 Eclipse
Install golang package: sudo apt-get install golang
Download Eclipse:sudo apt-get install eclipse
Start Eclipse
Go to Help->Install new software
Select All Availible sites and search for goclipse, select and install.
Restart Eclipse when prompted.
2 Eclipse Go Settings
Go to Window-> Preferences
Select Go
GOROOT: /usr/lib/go
GOPATH: /usr/share/go
Go-tool path: /usr/bin/go
Go formatter: /usr/bin/gofmt
Go documentor: /usr/bin/godoc
3 GoCode for Autocompletion
Make sure you have git installed: sudo apt-get install git
Get gocode with: sudo go get -u github.com/nsf/gocode
In Eclipse go to Window-> Preferences
Select Go-> Gocode (Submenu)
Gocode path: /usr/lib/go/bin/gocode
计算机视觉
Comments(0)
2011年4月18日 18:27
meego开发学习路线:
http://blog.csdn.net/jack0106/archive/2011/01/20/6154197.aspx
meego开发总结:
http://blog.csdn.net/jack0106/archive/2010/12/31/6110333.aspx
移动开发
Comments(0)
2011年4月18日 18:25
一、打印法
最简单的调试方法就是直接打印或输出到日志文件里。请参考:http://www.top-e.org/jiaoshi/html/?177.html
二、GDB远程调试
请参考:http://tope.eefocus.com/article/09-07/1389691246949101.html
三、CDT远程调试
请参考:http://blog.simophin.net/?p=774
内功修行
Comments(0)
2011年3月08日 18:05
一、什么是对齐,以及为什么要对齐:
1. 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问,这就需要各类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。
2. 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开始存取。其他平台可能没有这种情况, 但是最常见的是如果不按照适合其平台的要求对数据存放进行对齐,会在存取效率上带来损失。比如有些平台每次读都是从偶地址开始,如果一个int型(假设为 32位)如果存放在偶地址开始的地方,那么一个读周期就可以读出,而如果存放在奇地址开始的地方,就可能会需要2个读周期,并对两次读出的结果的高低 字节进行拼凑才能得到该int数据。显然在读取效率上下降很多。这也是空间和时间的博弈。
内容提要:
1、安装meego sdk
2、安装meego runtimes(qemu)
3、配置Qt Creator
4、卸载meego
内容提要:
1、meego简介
2、meego sdk介绍
3、meego术语介绍
4、meego开发资源介绍
QT库也提供了类似STL的容器类,它们是QList 、QLinkedList、QVector、QStack、QQueue、QSet、QMap、QMultiMap、QHash、QMultiHash,还有两个比较特殊一点的QCache和QContiguousCaChe。
这些容器类被设计成高效的、安全的和易于使用的,并且是隐式共享、可重入的和线程安全的,提供了两种风格的遍历方式:java风格和stl迭代器风格的。
对于这些容器类,最先考虑使用的应该是QList,因为实现了一种数组-链表式,所以无论是前置、追加还是中间插入都是非常快的。如果你确切需要链表式存储方式就用QLinkedList,如果你确切需要连续的内存就用QVector,如果需要后进先出就用QStack,需要先进先出就用QQueue。如果是其它映射方式的存储就考虑其它几方式了。
这些容器类都是可以嵌套使用的,值的注意的一点是,由于继承QObject类的所有Gui类都没有拷贝构造函数和赋值运算符,所以不能直接用容器类存储,但是可以存储指向它们的指针。
说明:
1)以下需要设置的地方均在Settings->Editor...弹出的对话框中。
2)不少命令都可针对当前行或选中的代码块,下文简称当前行或选中块。
==日常编辑==
按住Ctrl滚滚轮,代码的字体会随你心意变大变小,对保护视力特别有好处。
在编辑区按住右键可拖动代码,省去拉(尤其是横向)滚动条之麻烦;相关设置:Mouse Drag Scrolling。
Ctrl+D可复制当前行或选中块。
Ctrl+Shift+C注释掉当前行或选中块,Ctrl+Shift+X则解除注释。
Tab缩进当前行或选中块,Shift+Tab减少缩进。
可拖动选中块使其移动到新位置,按住Ctrl则为复制到新位置。
按下Atl,再拖动鼠标,可以实现部分选择(即只选中一个区域内的字符,而不会包含它们所在行的其他字符)。
需要更大编辑空间时,F2和Shift+F2分别可以显隐下方Logs & others栏和左方的Management栏。
在ubuntu 10.04下安装opencv,步骤如下:
1、找到opencv的依赖包
$ sudo apt-cache search opencv
libcv-dev - development files for libcv
libcv4 - computer vision library
libcvaux-dev - development files for libcvaux
libcvaux4 - computer vision extension library
libhighgui-dev - development files for libhighgui
libhighgui4 - computer vision GUI library
opencv-doc - OpenCV documentation and examples
python-opencv - Python bindings for the computer vision library
harpia - Image Processing/Computer Vision Automatic Prgm. Tool