Eclipse CDT配置使用glib库的方法(ubuntu)
1 安装Eclipse IDE for C/C++ Developers以及glib
2 新建一个C project
3 右击工程,属性->C/C++ General -> Path and Symbols,在includes中添加/usr/include/glib-2.0和/usr/include/glib-2.0/include(glib安装的位置可能不同);
4 C/C++ Build->Setting->Gcc c Compiler->Miscellaneous中添加$$(pkg-config --cflags glib-2.0)
5 C/C++ Build->Setting->Gcc c Linker->Miscellaneous中添加$$(pkg-config --libs glib-2.0)
上述4、5步骤也可以用$$(pkg-config --libs --cflags glib-2.0)。
这里的pkg-config是什么呢?
pkg-config 是一个提供从源代码中编译软件时查询已安装的库时使用的统一接口的计算机软件。pkg-config原本是设计用于Linux的,但现在在各个版本的BSD、windows、Mac OS X和Solaris上都有着可用的版本。
它输出已安装的库的各个信息,包括:
C或C++编译器需要的参数
链接器需要的参数
已安装软件包的版本信息
当安装一个库时(从RPM,deb, ...),会包括一个后缀名为pc的文件,它会同其他.pc文件一起放入一个文件夹(依赖与你的系统设置)。
在这个文件里包含有数个条目。这些条目通常包含用于其他使用这个库的程序编译时需要的库设置,以及头文件的位置,版本信息和一个简介。
这是一个glib-2.0.pc的样例,一般在/usr/lib/pkgconfig/或/usr/share/pkgconfig/下
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
glib_genmarshal=glib-genmarshal
gobject_query=gobject-query
glib_mkenums=glib-mkenums
Name: GLib
Description: C Utility Library
Version: 2.12.13
Libs: -L${libdir} -lglib-2.0
Cflags: -I${includedir}/glib-2.0 -I${libdir}/glib-2.0/include
这个文件告诉我们这些库可以在/usr/lib找到,头文件可以在/usr/include里找到,库的名字是libglib-2.0,并且版本号是2.12.13。它也提供了用于编译依赖于libglib-2.0的源代码时需要的链接器参数。
这是一个编译时使用pkg-config的样例:
gcc -o test test.c $(pkg-config --libs --cflags glib-2.0)