在程序编译时候,通常需要引用外部库文件或者头文件,文件多了用gcc指定时候就显得麻烦,一个一个写在Makefile中也比较繁琐,这种情况下,能自动获取完整的依赖库信息就显得轻松不少了。
pkg-config简介及用法
关于pkg-config
pkg-config就是自动获取所需的库文件以及头文件的命令,原本设计用于Linux,不过后来其他系统如Win和Mac里也都有可用的版本。
主要用于输出C/C++的编译器需要的参数,链接器需要的参数以及已经安装软件版本等信息。
主要用法
其主要的命令参数以及解释如下:
|
|
其中用的比较多的就是--cflags
和--libs
。主要用来输出头文件和lib文件。
如查找opencv头文件和lib库的位置:
|
|
输出:
|
|
再如Gstreamer的:
可以看到,
关于路径的获取
pkg-config获取路径是通过查询第三方库的pc文件实现的。比如:
输出:
pc文件内容通常包含Name, Description, Version, Libs, Cflags
等基本参数。如opencv的pc文件内容是:
所以也可以以同样的方式添加自己的第三方库来简化编译工作。