“pkg-config”从哪里获取信息?

jld*_*ont 8 linux debian

“pkg-config”从哪里获取信息?

构建 .deb 包时需要哪些文件?

Ger*_*ade 8

按照手册(至少在我的 pc-config 版本中),将使用以下命令显示相关 *.pc 文件的搜索路径:

pkg-config --variable pc_path pkg-config
Run Code Online (Sandbox Code Playgroud)

所以,如果我想用 libsoup 编译一些东西,并且不知道安装的 libsoup 的版本号(假设是 2.4),我成功地编写了:

pkg-config --cflags --libs $(grep -l 'Cflags.*libsoup' $(find $(pkg-config --variable pc_path pkg-config|tr ':' ' ') -name "*.pc" 2>/dev/null)|tail -n1)
Run Code Online (Sandbox Code Playgroud)


mon*_*y_p 6

http://linux.die.net/man/1/pkg-config

pkg-config 从特殊元数据文件中检索有关包的信息。这些文件以包命名,扩展名为 .pc。默认情况下,pkg-config 在目录 prefix/lib/pkgconfig 中查找这些文件;它还将查看由 PKG_CONFIG_PATH 环境变量指定的以冒号分隔(在 Windows 上,以分号分隔)的目录列表。