问题描述
我正在尝试构建使用介子的 celluloid。我跑了 meson,但是找不到合适的 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
)
解决方法
您可以通过让 pkgconfig 了解您的依赖项来告诉 meson 您的依赖项...
这可以通过将您的依赖项的路径添加到 PKG_CONFIG_PATH
环境变量来完成;它由冒号分隔,就像 PATH
一样,例如/opt/foo:/opt/extra/baz
。
请记住,在使用自定义目录构建和安装后,您可能还需要添加到 LD_LIBRARY_PATH
的关联路径。