找不到包“gdk-pixbuf-2.0”

Posted

技术标签:

【中文标题】找不到包“gdk-pixbuf-2.0”【英文标题】:No package 'gdk-pixbuf-2.0' found 【发布时间】:2014-12-11 13:39:47 【问题描述】:

我正在尝试在 Amazon Linux 发行版实例上构建 librsvg。我已经通过 yum 安装了大部分依赖项。在实例上启用了默认 yum 存储库中不可用的一些内容,因此必须从头开始构建它们。我已经走了很远,但被困在最后一点。当为 librsvg 运行 sudo ./configure 时,我得到 No package 'gdk-pixbuf-2.0' found。对于我通过 yum 安装的一些软件包,我确实收到了这条消息,安装这些库的 -dev 版本解决了我的问题。目前 gdk-pixbuf-2.0 是我从源代码安装的唯一库。

以下是缺失库的 pkg-config 结果:

$ pkg-config --list-all | grep pixbuf
> gdk-pixbuf-2.0        GdkPixbuf - Image loading and scaling
$ pkg-config --modversion pixbuf
> 2.26.1
    为什么找不到这个包? -dev/-devel 包通常安装/配置什么? 还有其他环境在起作用吗?即 LD_LIBRARY_PATH、CPPFLAGS、LDFLAGS 我是否在构建步骤中遗漏了一个可以正确注册此包/lib 的步骤?

【问题讨论】:

通常您不需要(或不想)以 root 身份运行 ./configure 脚本。一般也不是makemake install 虽然一般来说确实需要它。 您是否必须设置任何 pkg-config 相关的环境变量才能让pkg-config 找到它? sudo 'pkg-config --list-all | grep pixbuf' 找到了吗? 是的,我必须手动设置PKG_CONFIG_PATH。我搜索了 gdk-pixbuf-2.0.pc 文件并将该路径添加到PKG_CONFIG_PATH 以非 root 用户身份运行 ./configure 会产生 ./configure: line 2097: config.log: Permission denied 是的,一旦您以 root 身份运行它,它就会触及各种文件并导致权限问题。您需要修复目录中的所有 root 拥有的文件,然后才能以非 root 身份运行它。 【参考方案1】:

运行 pkg-config --libs gdk-pixbuf-2.0pkg-config --cflags gdk-pixbuf-2.0 缺少某些其他包,gdk-pixbuf-2.0pkg-config 需要将错误报告给 configure,但在列出所有包时不会向您报告。

【讨论】:

顺便说一句,这类事情的一个重要信息来源是 Linux From Scratch Book。 尽管这个答案不是确切的解决方案,但我标记了它,因为你在我的主要帖子上的 cmets 中为我指出了正确的方向。正确设置环境变量并知道何时使用 sudo 是关键。我终于让一切正常工作并将其保存在这个要点中:gist.github.com/whyvez/1e0212a35da97aa8f1b1。这是我第一次深入接触 c/native 世界,现在它让我很好奇。写完这篇文章后,我开始阅读您推荐的“Linux From Scratch”一书。

以上是关于找不到包“gdk-pixbuf-2.0”的主要内容,如果未能解决你的问题,请参考以下文章

mac安装包安装好的软件怎么找不到?

使用java的jar包默认类提示找不到符号

云计算找不到包

IntelliJ IDEA 编译代码报错 找不到符号 符号: 找不到符号包 包

IntelliJ IDEA 编译代码报错 找不到符号 符号: 找不到符号包 包

编译java文件时提示找不到包