pkg-config的使用

在linux下使用gcc编译项目时,一般都需要使用非标准的库和头文件,而这些文件在不同人的系统里可能装在不同路径,编译时需要使用-I指定头文件目录,使用-L指定库文件目录.为了让编译时的命令统一,有了pkg-config.它是一个提取库信息的工具.通过库提供的.pc文件可以从中提取信息.支持pkg-config的库对应的.pc文件一般在lib/pkgconfig目录下.

如gtk+-2.0.pc的内容为:

 

prefix=/devel/target/0684580203da616c0bb222943906b663

exec_prefix=${prefix}

libdir=${exec_prefix}/lib

includedir=${prefix}/include

target=win32

 

gtk_binary_version=2.10.0

gtk_host=i686-pc-mingw32

 

Name: GTK+

Description: GTK+ Graphical UI Library (${target} target)

Version: 2.24.8

Requires: gdk-${target}-2.0 atk cairo gdk-pixbuf-2.0 gio-2.0

Libs: -L${libdir} -lgtk-${target}-2.0

Cflags: -I${includedir}/gtk-2.0 -mms-bitfields

 

如:pkg-config --cflags --libs gtk+-2.0就会输出gtk及其依赖的库的信息.然后可以利用这些信息去进行编译.

 

但pkg-config是怎么获得这些信息的呢?它使用PKG_CONFIG_PATH去指定搜索的目录.所以当我们安装了新的库且不在gcc默认搜索的目录时,可以使用-I和-L选项或者使用pkg-config.

 

例如:gcc -o test test.c 'pkg-config --libs --cflags gtk+-2.0'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值