pkg-config目标定义在哪里?

时间:2017-02-10 22:38:26

标签: c linux gstreamer centos7 pkg-config

执行命令时

pkg-config --variable pc_path pkg-config

输出

  

的/ usr / lib64下/ pkgconfig:在/ usr /共享/ pkgconfig

但是,我的系统上还有另外两个pkgconfig目录:/usr/lib/pkgconfig/usr/local/lib/pkgconfig

如果我尝试

echo $PKG_CONFIG_PATH

结果是

  

未定义的变量

我也试过

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig 

但回复是

  

export:找不到命令。

现在,我已经多次建立了Gstreamer,它会把它放到 元数据文件(gstreamer-1.0.pc)进入另一个pkgconfig文件夹(usr / local / lib / pkgconfig)。 (我已经能够通过修改配置文件来克服这个问题,在libdir定义中将lib更改为lib64。)但我宁愿理解我的系统而不是尝试解决方法。

所以有两个问题:pkg-config程序在哪里获得目标目录?

为什么以及如何将元数据文件放入pkg-config程序未明确指示的目录中?

2 个答案:

答案 0 :(得分:0)

由于该命令不起作用,因为该变量不存在 首先检查变量是否存在以执行此操作 执行命令 ENV root @ localhost:/ etc / apt#env 如果路径未在env中声明 然后做一些像

这样的事情 root @ localhost:/ etc / apt#PKG_CONFIG_PATH = / usr / local / lib / pkgconfig root @ localhost:/ etc / apt#export PKG_CONFIG_PATH root @ localhost:/ etc / apt #echo $ PKG_CONFIG_PATH 在/ usr / local / lib目录/ pkgconfig root @ localhost:/ etc / apt#env

希望这对你有用 如有任何进一步的帮助,请发布错误

的查询

答案 1 :(得分:0)

安装foo软件包时,foo软件包有一个适当的foo.pc,它安装在默认的pkgconfig目录中。如果包已将其* .pc文件放在自定义位置(如您所知),则应相应地设置PKG_CONFIG_PATH。因此,pkg-config不仅会查看默认目录,还会查找您在PKG_CONFIG_PATH中指定的自定义路径。本指南解释得很好:

pkg-config guide