编译 Hello World 程序
编译命令是:
gcc -Wall -g helloworld.c -o helloworld `pkg-config --cflags gtk+-2.0`
`pkg-config --libs gtk+-2.0`
要用程序 pkg-config,可以从 www.freedesktop.org 得到。这个程序读文件 .pc
来决定编译 GTK 程序需要的编译选项。pkg-config --cflags gtk+-2.0 列出
include 目录,pkg-config --libs gtk+-2.0 列出编译连接库,也可以合在一起
,像这样:pkg-config --cflags --libs gtk+-2.0。
注意上面编译命令中使用了“命令替换”。命令替换(command substitution)使得
可以捕获一个命令的输出而在另一个命令中替换它。
连接时常用的库:
GTK 库(-lgtk),构件库,基于 GDK。
GDK 库(-lgdk),Xlib 库的封装(wrapper)。
gdk-pixbuf 库(-lgdk_pixbuf),图像处理库。
Pango 库(-lpango),国际化。
gobject 库(-lgobject),包含 GTK 的类型系统。
gmodule 库(-lgmodule),动态运行库。
GLib 库(-lglib),包含各种函数;这个示例里只用了 g_print()。GTK 是基于
GLib,因此你总需要这个库。详见 GLib 这一章。
Xlib 库(-lX11),GDK 要使用。
Xext 库(-lXext),包含共享内存位图和其它 X 扩展。
math 库(-lm),数学库。