pkg-config的作用
什么是 pkg-config
pkg-config 是一个 linux 软件包,用于帮助开发人员查找、定位和使用依赖库。它可以简化软件的构建过程。(比如 sharp 依赖 libvips)
例如:当开发人员编写一个软件,且需要使用某个依赖库时,他们就可以使用 pkg-config 工具来查找该库的安装位置,并获取其编译和链接需要的参数。从而确保软件可以正确地链接和运行所需的依赖库。
pkg-config 的安装使用
在 Termux 中,使用 pkg install pkg-config 命令来安装 pkg-config。
开发人员可以通过在命令行中运行 pkg-config --cflags <library> 来获取编译参数,通过运行 pkg-config --libs <library> 来获取链接参数。这些参数可以直接应用到编译和链接命令中,以确保程序可以正确地使用所需的依赖库。
pkg-config 的原理是通过读取依赖库对应的 pc 文件来输出结果的。比如你的 libssl 安装在 /usr/lib 下,那么生成的 pc 文件就是 /usr/lib/pkgconfig 下的 libssl.pc 文件。文件中定义了这个依赖库的名称、版本号、在当前环境的目录前缀、编译选项等等。pkg-config 的输出就是来自该文件。
默认情况下 pkg-config 的查找路径为 /usr/lib/pkgconfig 和 /usr/share/pkgconfig,可以通过环境变量 PKG_CONFIG_PATH 在额外指定 pkg-config的查找路径。
有的时候,当我们在编译源码 configure 过程中时,可能遇到依赖库明明已安装而 pkg-config 却提示找不到依赖库的情况,此时可以尝试修改环境变量 PKG_CONFIG_PATH,将库的安装路径添加到 pkg-config 搜索路径中便可解决问题。(或者修改系统动态链接库搜索路径 LD_LIBRARY_PATH)
1 | |