pkg-config / CFLAGS

1. 查看安装的version

运行pkg-config --modversion opencv发现现有的opencv是2.4.8。但是仔细没有找到opencv.lib相关文件。。只在/usr/include下找到了一些头文件。

以前不习惯用pkg-config,喜欢在Makefile中指定程序的依赖项。但是这样做存在一个问题,即当你的机器上安装了同一名称但不同版本的依赖库时,就有可能导致链接失败。这时,pkg-config就显示了它的优势:使编译选项简洁明了。

那么pkg-config是干啥的呢?按照官方说法,它用来返回已安装库的基本信息。

pkg-config [--modversion] [--help] [--print-errors] [--silence-errors] [--cflags] [--libs] [--libs-only-L] [--libs-only-l] [--cflags-only-I] [--variable=VARIABLENAME] [--define-variable=VARIABLENAME=VARIABLEVALUE] [--uninstalled] [--exists] [--atleast-version=VERSION] [--exact-version=VERSION] [--max-version=VERSION] [LIBRARIES...]

以上参数中,我们常用的基本就是[–cflags] [–libs],用来指出程序依赖的头文件和库文件路径。典型用法如下:


program: program.c
        cc program.c ‘pkg-config --cflags --libs gnomeui‘

其中,gnomeui就是程序要链接的库的名称。

你可能感兴趣的:(C++)