介子找不到二进制依赖关系



我用这个命令从源代码编译了wayland

meson --buildtype=release -D prefix=$HOME/mylib -D documentation=false

然后与ninja一起安装。在$HOME/mylib中,我有这样的结构:

total 24K
drwxr-xr-x  6 myuser myuser 4.0K Dec  3 19:52 .
drwxr-xr-x 16 myuser myuser 4.0K Dec  4 17:41 ..
drwxr-xr-x  2 root             root             4.0K Dec  3 19:52 bin
drwxr-xr-x  2 root             root             4.0K Dec  3 19:52 include
drwxr-xr-x  3 root             root             4.0K Dec  3 19:52 lib
drwxr-xr-x  4 root             root             4.0K Dec  3 19:52 share

bin文件夹我有wayland-scanner,当我运行这个命令

wayland-scanner -v

我得到了这样的输出:

wayland-scanner 1.21.90

现在,当我用meson构建其他源代码时,有道路扫描仪作为依赖项,我得到了这个错误:

../tests/meson.build:2:0: ERROR: Invalid version of dependency, need 'wayland-scanner' ['>=1.20.0'] found '1.18.0'.

这与这里的另一个wayland-scanner相关:

/usr/bin/wayland-scanner

版本为1.18.0。命令

echo $PATH

回复以下输出:

/home/myuser/mylib/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games

为什么介子找不到wayland-scanner的更新版本?使用PKG_CONFIG_PATH不工作,与上面相同的错误

我不知道wayland包,但从描述我可以认为/usr/bin/wayland-scanner是旧安装的链接,尝试在您的环境中查找wayland-scanner扫描器二进制文件,以检查是否有某些链接未更新到新安装。

最有可能的是,在另一个构建期间,在pkg-config工具(meson搜索依赖项的标准方式)的帮助下搜索waeland -scanner(即使是可执行的二进制文件)。所以,检查一下道路扫描仪。PC已经安装,应该是/home/myuser/mylib/share/pkgconfig/wayland-scanner。pc然后,在运行构建之前,尝试更新PKG_CONFIG_PATH

export PKG_CONFIG_PAT=/home/myuser/mylib/share/pkgconfig:$PKG_CONFIG_PATH

最新更新