[Linux可视化编程系列一] 用 Anjuta 轻松搭建 Gtkmm+libglademm 集成开发环境(IDE)

软件和网站开发以及相关技术探讨
头像
tipfoo
帖子: 303
注册时间: 2007-07-12 16:30
来自: 桂林

[Linux可视化编程系列一] 用 Anjuta 轻松搭建 Gtkmm+libglademm 集成开发环境(IDE)

#1

帖子 tipfoo » 2007-11-18 15:24

09年三月,Qt 4.5 采用 LGPL 授权了,几乎没有理由再用 Gtkmm :em06

───────────────────────────────────────────
[Linux可视化编程系列快速导航]
一、用 Anjuta 轻松搭建 Gtkmm+libglademm 开发环境
二、掀起 Gtkmm + libglademm 的盖头来
三、体验Glade的可视化界面设计
───────────────────────────────────────────

点几下鼠标就能够轻松的开发出一个基于GTKmm的Helloworld的图形化接口程序?
没错!Linux下已经能够很容易地构建这样一个集成开发环境。
我的操作系统环境是 Ubuntu 7.04 (Feisty),希望用7.10的朋友试试,并反馈结果,谢谢!
(tipfoo 原创作品,转载请注明出处: http://blog.csdn.net/tipfoo/ ,商业用途请联系作者<tipfoo@gmail#com>,未经授权,不得使用。)


为什么选择GTKmm,而不是GTK+或QT?

GTKmm以前又称GTK--,是用C++封装GTK+的类库,而大部分Linux发行版的默认桌面Gnome就是基于GTK+的。选择GTKmm的主观原因有三:
首先,GTKmm已经成为GTK+的官方项目的一部分,和GTK+库同步更新,可见GTKmm开始受到重视,也许GTK+/C真的是快被GTKmm/C++替代了。项目现在很活跃,更新很快。
再者,有几个知名软件也使用了GTKmm类库,这应该能起到定心丸的作用^_^,罗列如下:
Inkscape (矢量绘图工具),GParted (分区大师),MySQLAdmin,Turn Watcher (RPG游戏),Aeskulap (DICOM图像查看器)
最后,LGPL对于想开发个闭源的软件赚点外快的程序员朋友来说是较友好的,不像QT的GPL。


安装Anjuta

Anjuta 集成的glade插件已经是完全功能的了,不用再独立安装 glade-3/glade-gnome-3。

参看这个帖子来安装Anjuta。虽然得到的开发环境,特别适合在Linux下学习C/C++,或者进行命令行程序的开发;但却是达成本篇目标不可或缺的基础。


安装GUI开发包
安装图形接口和本地化等开发包。

代码: 全选

$ sudo apt-get install libglademm-2.4-dev libgnomemm-2.6-dev intltool
其中,intltool是为了支持国际化/本地化,并将同时安装gettext包。


编码提示和自动补全
点击菜单“设置” → “Preferences” → 选择“Symbol Browser” → 按下“Update globale tags”按钮即可。
在这个界面,你还可以添加自己的库的TAG,这样你自己的类库就能在编码提示中出现了。


安装API文档
安装开发中常用的API文档,及查看器DevHelp(因libdevhelp的问题,Anjuta 的 “API帮助”插件不能工作)。

代码: 全选

$ sudo apt-get install devhelp libgtkmm-2.4-doc libcairomm-1.0-doc libglib2.0-doc libgnome2-doc libsigc++-2.0-doc
奇怪的是Feisty的源里没有libglibmm-2.4-doc。到Debian这里下载DEB安装包,任选一个镜像即可(如北美的);先不要安装。因版本冲突,为了不破坏依赖关系,我们不使用强制安装,只需要解压所需的文件到相应位置,就可以使用了。

代码: 全选

$ sudo dpkg-deb -x libglibmm-2.4-doc_2.14.2-1_all.deb /
通常,这些文档都安装在“/usr/share/doc/”目录下。常见的有两类:
一类是通过DevHelp工具查看的,点击主菜单:“应用程序”→“编程”→“DevHelp”;
另一类只有网页的形式,像 libsigc++-2.0-doc 就属于这一类,要查看它,在Firefox浏览器的地址栏输入“/usr/share/doc/libsigc++-2.0-doc/docs/index.html”后回车。
(可选择安装更多的文档包: libgtk2.0-doc libgcrypt11-doc libpango1.0-doc gnutls-doc等等)

tipfoo 原创作品,转载请注明出处: http://blog.csdn.net/tipfoo/ ,商业用途请联系作者<tipfoo@gmail#com>,未经授权,不得使用。


看看效果
好了!现在是时候验证一下我们的开发环境能否正常工作了。创建一个Gtkmm工程,编译并运行它。
这里有段Flash做的视频,演示了这个过程,点击下载观看anjuta_gtkmm.htm
注:视频末尾所留的 MSN 已停止使用,请不要再通过它联系我!
。。。Hotmail 网页接口太慢,对 Firefox 太不友善。
上次由 tipfoo 在 2009-05-29 21:13,总共编辑 5 次。
zjchuyp
帖子: 5
注册时间: 2007-07-25 8:03

#2

帖子 zjchuyp » 2007-11-22 16:37

很不错, 谢谢
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#3

帖子 eexpress » 2007-11-22 16:42

支持下。文章太短了哦。胖胖鱼。
● 鸣学
头像
tipfoo
帖子: 303
注册时间: 2007-07-12 16:30
来自: 桂林

#4

帖子 tipfoo » 2007-11-22 17:02

谢谢zjchuyp和ee老大支持! :D

长的“系列二”、“系列三”就在后面。
头像
blackiron
帖子: 887
注册时间: 2007-05-25 16:47
来自: 上海

#5

帖子 blackiron » 2007-11-25 0:33

好东东,楼上叫你胖胖鱼啊,不过你这鱼咋浑身都是刺呢
头像
tipfoo
帖子: 303
注册时间: 2007-07-12 16:30
来自: 桂林

#6

帖子 tipfoo » 2007-11-25 9:47

呵呵,不过是随意从系统安装的图标中选的一个,这种鱼叫海刺猬(学名海胆),当然浑身都是刺啦。
头像
iblicf
帖子: 3766
注册时间: 2007-01-15 17:15

#7

帖子 iblicf » 2007-11-25 13:06

eexpress 写了:支持下。文章太短了哦。胖胖鱼。
笨蛋,是河豚
airmy
帖子: 339
注册时间: 2007-11-13 18:40

楼主我有问题

#8

帖子 airmy » 2007-11-26 17:42

我卡在libglibmm-2.4-doc这个包上了!我用的是7。10!我下载玩你的包之后去/usr/share/doc处解压出现错误!而且在终端运行sudo dpkg-deb -x libglibmm-2.4-doc_2.14.2-1_all.deb /也不行怎么办?提示dpkg-deb: 读取包文件“libglibmm-2.4-doc_2.14.2-1_all.deb”失败: No such file or directory!怎么解决老大
头像
tipfoo
帖子: 303
注册时间: 2007-07-12 16:30
来自: 桂林

Re: 楼主我有问题

#9

帖子 tipfoo » 2007-11-26 20:26

airmy 写了:我卡在libglibmm-2.4-doc这个包上了!我用的是7。10!我下载玩你的包之后去/usr/share/doc处解压出现错误!而且在终端运行sudo dpkg-deb -x libglibmm-2.4-doc_2.14.2-1_all.deb /也不行怎么办?提示dpkg-deb: 读取包文件“libglibmm-2.4-doc_2.14.2-1_all.deb”失败: No such file or directory!怎么解决老大
假设你下载的libglibmm-2.4-doc_2.14.2-1_all.deb文件在“/tmp”目录下,你就应该在“/tmp”目录下执行解压命令:

代码: 全选

~$ cd /tmp
/tmp$ sudo dpkg-deb -x libglibmm-2.4-doc_2.14.2-1_all.deb /
TsungWu
帖子: 115
注册时间: 2006-11-26 15:18
来自: 诗山

#10

帖子 TsungWu » 2007-12-07 9:09

新建工程的时候,选择project option的时候add shared library support在我这里是要选为否~不然出错
你最珍贵.
头像
shanliang8008
帖子: 1362
注册时间: 2007-07-16 19:43
来自: tangshan

#11

帖子 shanliang8008 » 2008-05-02 16:13

TsungWu 写了:新建工程的时候,选择project option的时候add shared library support在我这里是要选为否~不然出错
恩 我也是 8。4
头像
yangcheng
帖子: 498
注册时间: 2005-09-27 18:24
来自: 杭州

#12

帖子 yangcheng » 2008-05-04 15:02

还是觉得eclipse+cdt+qt用起来顺

flash怎么录制的?
头像
tipfoo
帖子: 303
注册时间: 2007-07-12 16:30
来自: 桂林

#13

帖子 tipfoo » 2008-05-05 8:56

yangcheng 写了:还是觉得eclipse+cdt+qt用起来顺

flash怎么录制的?
最近发现 NetBeans 更好!NB 6.1 (只含C++ 模块的包)总共大小才14MB,安装即用。

Flash 用 Wink 录制。。。不过还是不太好用,耗资源,编辑时特痛苦。
huwenhuo
帖子: 74
注册时间: 2008-01-10 11:14

#14

帖子 huwenhuo » 2008-05-16 23:13

编码提示和自动补全
点击菜单“设置” → “Preferences” → 选择“Symbol Browser” → 按下“Update globale tags”按钮即可。
在这个界面,你还可以添加自己的库的TAG,这样你自己的类库就能在编码提示中出现了。


------------------------------------------------------------------------------------------------------------------------

以上这段没法找到, 我的机子上没有这个选项...

我是菜的
头像
tipfoo
帖子: 303
注册时间: 2007-07-12 16:30
来自: 桂林

#15

帖子 tipfoo » 2008-05-17 9:57

可能版本不同,菜单变了。在 2.3.1 下,是“编辑” → “Preferences” → 选择左边列表中“Symbol Browser”
回复