libpeas-1.0不是通过介子依赖而是通过pkg-config找到

时间:2018-08-02 19:59:22

标签: vala pkg-config meson-build flatpak gnome-builder

我正在使用GNOME构建器创建一个vala项目,并尝试通过以下方式将libpeas-1.0添加为介子的依赖项:

dependency('libpeas-1.0', version: '>= 1.22')

失败,并显示以下信息:

src/meson.build:10:0: ERROR:  Native dependency 'libpeas-1.0' not found

如果我执行:

pkg-config --print-provides libpeas-1.0

在重击中,我得到:

libpeas-1.0 = 1.22.0

同样有效的是:

meson.get_compiler('vala').find_library('libpeas-1.0')

有什么想法在这里出了什么问题吗?

1 个答案:

答案 0 :(得分:1)

GNOME Builder适用于FlatPak,这是一种容器化技术,并且是infrastructure。问题可能是GNOME Builder使用的默认Flatpak运行时不包含libpeas。

您的主机系统上显然已经安装了libpeas-1.0。因此,一种选择是让GNOME Builder使用主机操作系统。有一个选择Flatpak运行时的选项。选择Host Operating Sytem

或者,您可以将libpeas-1.0依赖项作为模块添加到Flatpak清单中。清单采用JSON格式,因此意味着添加类似于以下示例的内容,其中添加gee-0.8

  "modules": [
    {
      "name": "libgee",
      "buildsystem": "meson",
      "config-opts": [
        "--libdir=lib"
      ],
      "builddir": true,
      "sources": [
        {
          "type": "git",
          "tag": "meson",
          "url": "https://github.com/GNOME/libgee.git"
        }
      ]
    }
  ]

这个StackOverflow问题Flatpak Meson Not Finding Vala Libraries From Gnome Builder中有一个冗长而详细的讨论。希望这将为您提供足够的信息以使事情正常进行。最好简化来自StackOverflow问题的说明,以便可以将一些文档添加到Vala wiki's GNOME Builder page