“pkg-config --modversion glib-2.0”报告旧版本

“pkg-config --modversion glib-2.0”报告旧版本

我有 Ubuntu 14.04 32 位。我试图从源代码编译一个应用程序。它在链接make过程中给我一个错误消息,./autogen.sh./configure没有错误地通过。我收到这个错误,undefined reference to g_variant_parse_error_quark我读到该函数g_variant_parse_error_quark在 2.39 中添加到 glib2。我检查了已安装的软件包,发现我的系统中的 libglib 版本是 2.40.0。但是

 pkg-config --modversion glib-2.0

报告2.38.2

看来我至少安装了两个不同的 glib2。我以前可能手动从源代码安装了 glib2。

我该如何修复该问题并让我的系统使用正确的最新库?

答案1

正如我猜测的那样,它源于多个库冲突。当我运行

 echo $PKG_CONFIG_PATH 

它返回空行

然后我搜索了

  locate glib-2.0.pc

我得到了

  /usr/lib/i386-linux-gnu/pkgconfig/glib-2.0.pc
  /usr/lib/i386-linux-gnu/pkgconfig/spice-client-glib-2.0.pc
  /usr/local/lib/pkgconfig/glib-2.0.pc

我也跑

  pkg-config --debug --modversion glib-2.0

查找搜索过的目录

我查看了文件glib-2.0.pc并检查了版本号。

我找到了正确的glib-2.0.pc文件

然后我跑

  export PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig/

然后./autogen.sh之后make

一切顺利

相关内容