1994年linux1.0正式发布。
当今linux已经是强劲的32位操作系统。
linux:GNU操作系统。遵从GPL协议。
目前linux大多用于服务器端。
名词:
GNU:网络对象模拟环境。
GUI:Graphics User Interface,图形用户接口。
KDE:K Desktop Environment K桌面环境。它是基于Qt库的。Qt库是一个夸平台的C++类库。
Gnome:GNU Network Object Model Environment ,GNU网络对象模拟环境。
GIMP:GNU的图像处理程序
GDK:GIMP Drawing Kit,对访问窗口的底层函数的一层封装。
gdk-pixbuf:客户端图像处理的库
GTK:GIMP Toolkit ,是创建图形用户界面的工具包。遵循LGPL。它最初用于开发GIMP。
GTK是在GMP与pdk-pixbuf基础上建立起来的。
GTK实质是一个面向对象的应用程序接口(API),由C语言写的。
GTK+是GTK的图形构建集。
GTK+/GNOME编程,首先要安装GTK+/GNOME库
GTK+官方网站:http://www.gtk.org/
GNOME官方网站: http://www.gnome.org/
了解基本名词后开始学习GTK+编程:
GTK+程序可以用任何linux上的编辑器撰写,我喜欢选用gedit文本编辑器。编译选用GCC。
我看了很多的文章,一般都是以下面这个最简单的程序开始:
建立一个窗口:
代码:
#include
int main( int argc,char *argv[] )/*
函数设定了默认的视频(visual)和颜色映射模式(color map),
接着会调用函数 gdk_init(gint *argc, gchar ***argv),每个GTK都有 */
{
GtkWidget *window;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
/*要使用窗口管理器来修饰和放置窗口*/
gtk_widget_show (window);/*显示窗口*/
gtk_main ();/*程序运行到这里,GTK 会“睡着”等待 X 事件 (如按钮或键盘按下)、超时(timeouts)或文件 IO 通知发生*/
return 0;
}
将上面的代码保存为:base.c
用GCC在终端编译:
gcc base.c -o base `pkg-config --cflags --libs gtk+-2.0`
特别要注意的是`是键盘TAB上面的~,而不是‘,如果输入错误将无法编译。