首页 > 解决方案 > 我如何告诉介子设置有关依赖项的位置?

问题描述

我正在尝试构建使用介子的赛璐珞。我运行了介子,但找不到合适的 mpv 版本:

Determining dependency 'mpv' with pkg-config executable '/usr/bin/pkg-config'
Called `/usr/bin/pkg-config --modversion mpv` -> 1

Found CMake: /usr/bin/cmake (3.13.4)

Determining dependency 'mpv' with CMake executable '/usr/bin/cmake'
Try CMake generator: auto
Called `/usr/bin/cmake --trace-expand -DNAME=mpv .` in /tmp/celluloid-0.20/build/meson-private/cmake_mpv -> 0
Dependency mpv found: NO (tried pkgconfig and cmake)

src/meson.build:125:0: ERROR:  Dependency "mpv" not found, tried pkgconfig and cmake

所以我下载并构建了最新的mpv版本(0.33.0),构建并安装在/opt/mpv.

现在 - 我如何告诉介子走mpv这条新路?

注意:介子文件的相关片段似乎是:

executable('celluloid', sources,
  dependencies: [
    libgtk,
    libgio,
    meson.get_compiler('c').find_library('m', required: false),
    dependency('mpv', version: '>= 1.107'),
    dependency('epoxy')
  ],
  link_with: extra_libs,
  include_directories: includes,
  c_args: cflags,
  install: true
)

标签: cmakepkg-configmeson-buildbuild-dependenciesmpv

解决方案


你通过让pkgconfig知道你的依赖来告诉介子你的依赖......

这可以通过将依赖项的路径添加到PKG_CONFIG_PATH环境变量来完成;它由冒号分隔,就像PATH, eg /opt/foo:/opt/extra/baz

LD_LIBRARY_PATH请记住,在使用自定义目录构建和安装之后,您可能还需要添加关联路径。


推荐阅读