Cannot find run-time dependency airplay during `meson build`
Closed this issue · 3 comments
marcelgoh commented
Hi! I'm running Pop OS 21.04 and am following the build instructions. I got as far as the meson build
step without issue, but then I get this error:
The Meson build system
Version: 0.56.2
Source dir: /home/marcel/GitHub/gst-airplay
Build dir: /home/marcel/GitHub/gst-airplay/build
Build type: native build
Project name: gst-airplay
Project version: 0.1
C compiler for the host machine: cc (gcc 10.3.0 "cc (Ubuntu 10.3.0-1ubuntu1) 10.3.0")
C linker for the host machine: cc ld.bfd 2.36.1
Host machine cpu family: x86_64
Host machine cpu: x86_64
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Run-time dependency gio-2.0 found: YES 2.68.1
Run-time dependency gstreamer-1.0 found: YES 1.18.4
Run-time dependency gstreamer-base-1.0 found: YES 1.18.4
Run-time dependency gstreamer-video-1.0 found: YES 1.18.4
Configuring config.h using configuration
Found CMake: /usr/bin/cmake (3.18.4)
Run-time dependency airplay found: NO (tried pkgconfig and cmake)
meson.build:40:0: ERROR: Dependency "airplay" not found, tried pkgconfig and cmake
A full log can be found at /home/marcel/GitHub/gst-airplay/build/meson-logs/meson-log.txt
Here is the full log:
Build started at 2021-12-16T17:40:52.300053
Main binary: /usr/bin/python3
Build Options:
Python system: Linux
The Meson build system
Version: 0.56.2
Source dir: /home/marcel/GitHub/gst-airplay
Build dir: /home/marcel/GitHub/gst-airplay/build
Build type: native build
Project name: gst-airplay
Project version: 0.1
None of 'CC' are defined in the environment, not changing global flags.
None of 'CFLAGS' are defined in the environment, not changing global flags.
None of 'LDFLAGS' are defined in the environment, not changing global flags.
None of 'CPPFLAGS' are defined in the environment, not changing global flags.
None of 'CC_LD' are defined in the environment, not changing global flags.
Sanity testing C compiler: cc
Is cross compiler: False.
None of 'CC_LD' are defined in the environment, not changing global flags.
Sanity check compiler command line: cc /home/marcel/GitHub/gst-airplay/build/meson-private/sanitycheckc.c -o /home/marcel/GitHub/gst-airplay/build/meson-private/sanitycheckc.exe -pipe -D_FILE_OFFSET_BITS=64
Sanity check compile stdout:
-----
Sanity check compile stderr:
-----
Running test binary command: /home/marcel/GitHub/gst-airplay/build/meson-private/sanitycheckc.exe
C compiler for the host machine: cc (gcc 10.3.0 "cc (Ubuntu 10.3.0-1ubuntu1) 10.3.0")
C linker for the host machine: cc ld.bfd 2.36.1
None of 'AR' are defined in the environment, not changing global flags.
None of 'CC' are defined in the environment, not changing global flags.
None of 'CFLAGS' are defined in the environment, not changing global flags.
None of 'LDFLAGS' are defined in the environment, not changing global flags.
None of 'CPPFLAGS' are defined in the environment, not changing global flags.
None of 'CC_LD' are defined in the environment, not changing global flags.
Sanity testing C compiler: cc
Is cross compiler: False.
None of 'CC_LD' are defined in the environment, not changing global flags.
Sanity check compiler command line: cc /home/marcel/GitHub/gst-airplay/build/meson-private/sanitycheckc.c -o /home/marcel/GitHub/gst-airplay/build/meson-private/sanitycheckc.exe -pipe -D_FILE_OFFSET_BITS=64
Sanity check compile stdout:
-----
Sanity check compile stderr:
-----
Running test binary command: /home/marcel/GitHub/gst-airplay/build/meson-private/sanitycheckc.exe
C compiler for the build machine: cc (gcc 10.3.0 "cc (Ubuntu 10.3.0-1ubuntu1) 10.3.0")
C linker for the build machine: cc ld.bfd 2.36.1
None of 'AR' are defined in the environment, not changing global flags.
Build machine cpu family: x86_64
Build machine cpu: x86_64
Host machine cpu family: x86_64
Host machine cpu: x86_64
Target machine cpu family: x86_64
Target machine cpu: x86_64
Pkg-config binary for MachineChoice.HOST is not cached.
None of 'PKG_CONFIG' are defined in the environment, not changing global flags.
Pkg-config binary missing from cross or native file, or env var undefined.
Trying a default Pkg-config fallback at pkg-config
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Determining dependency 'gio-2.0' with pkg-config executable '/usr/bin/pkg-config'
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config --modversion gio-2.0` -> 0
2.68.1
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config --cflags gio-2.0` -> 0
-pthread -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config gio-2.0 --libs` -> 0
-L/usr/lib/x86_64-linux-gnu -lgio-2.0 -lgobject-2.0 -lglib-2.0
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config gio-2.0 --libs` -> 0
-lgio-2.0 -lgobject-2.0 -lglib-2.0
None of 'PKG_CONFIG_PATH' are defined in the environment, not changing global flags.
None of 'CC_LD' are defined in the environment, not changing global flags.
Running compile:
Working directory: /home/marcel/GitHub/gst-airplay/build/meson-private/tmpb4bdnl1r
Command line: cc /home/marcel/GitHub/gst-airplay/build/meson-private/tmpb4bdnl1r/testfile.c -o /home/marcel/GitHub/gst-airplay/build/meson-private/tmpb4bdnl1r/output.exe -pipe -D_FILE_OFFSET_BITS=64 -O0
Code:
#include<stdio.h>
int main(void) {
printf("%ld\n", (long)(sizeof(void *)));
return 0;
};
Compiler stdout:
Compiler stderr:
Program stdout:
8
Program stderr:
Running compile:
Working directory: /home/marcel/GitHub/gst-airplay/build/meson-private/tmpxuqn3ksh
Command line: cc /home/marcel/GitHub/gst-airplay/build/meson-private/tmpxuqn3ksh/testfile.c -o /home/marcel/GitHub/gst-airplay/build/meson-private/tmpxuqn3ksh/output.obj -pipe -c -D_FILE_OFFSET_BITS=64 -O0 --print-search-dirs
Code:
Compiler stdout:
install: /usr/lib/gcc/x86_64-linux-gnu/10/
programs: =/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/bin/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/bin/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/bin/
libraries: =/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/lib/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/lib/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib/:/lib/x86_64-linux-gnu/10/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/10/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../:/lib/:/usr/lib/
Compiler stderr:
Run-time dependency gio-2.0 found: YES 2.68.1
Pkg-config binary for MachineChoice.HOST is cached.
Determining dependency 'gstreamer-1.0' with pkg-config executable '/usr/bin/pkg-config'
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config --modversion gstreamer-1.0` -> 0
1.18.4
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config --cflags gstreamer-1.0` -> 0
-pthread -I/usr/include/gstreamer-1.0 -I/usr/include/x86_64-linux-gnu -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config gstreamer-1.0 --libs` -> 0
-L/usr/lib/x86_64-linux-gnu -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config gstreamer-1.0 --libs` -> 0
-lgstreamer-1.0 -lgobject-2.0 -lglib-2.0
None of 'PKG_CONFIG_PATH' are defined in the environment, not changing global flags.
Run-time dependency gstreamer-1.0 found: YES 1.18.4
Pkg-config binary for MachineChoice.HOST is cached.
Determining dependency 'gstreamer-base-1.0' with pkg-config executable '/usr/bin/pkg-config'
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config --modversion gstreamer-base-1.0` -> 0
1.18.4
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config --cflags gstreamer-base-1.0` -> 0
-pthread -I/usr/include/gstreamer-1.0 -I/usr/include/x86_64-linux-gnu -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config gstreamer-base-1.0 --libs` -> 0
-L/usr/lib/x86_64-linux-gnu -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config gstreamer-base-1.0 --libs` -> 0
-lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0
None of 'PKG_CONFIG_PATH' are defined in the environment, not changing global flags.
Run-time dependency gstreamer-base-1.0 found: YES 1.18.4
Pkg-config binary for MachineChoice.HOST is cached.
Determining dependency 'gstreamer-video-1.0' with pkg-config executable '/usr/bin/pkg-config'
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config --modversion gstreamer-video-1.0` -> 0
1.18.4
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config --cflags gstreamer-video-1.0` -> 0
-pthread -I/usr/include/gstreamer-1.0 -I/usr/include/orc-0.4 -I/usr/include/gstreamer-1.0 -I/usr/include/x86_64-linux-gnu -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config gstreamer-video-1.0 --libs` -> 0
-L/usr/lib/x86_64-linux-gnu -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config gstreamer-video-1.0 --libs` -> 0
-lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0
None of 'PKG_CONFIG_PATH' are defined in the environment, not changing global flags.
Run-time dependency gstreamer-video-1.0 found: YES 1.18.4
Configuring config.h using configuration
Pkg-config binary for MachineChoice.HOST is cached.
Determining dependency 'airplay' with pkg-config executable '/usr/bin/pkg-config'
PKG_CONFIG_PATH:
Called `/usr/bin/pkg-config --modversion airplay` -> 1
CMake binary for MachineChoice.HOST is not cached
None of 'CMAKE' are defined in the environment, not changing global flags.
CMake binary missing from cross or native file, or env var undefined.
Trying a default CMake fallback at cmake
Found CMake: /usr/bin/cmake (3.18.4)
None of 'CMAKE_PREFIX_PATH' are defined in the environment, not changing global flags.
Extracting basic cmake information
Try CMake generator: auto
Calling CMake (['/usr/bin/cmake']) in /home/marcel/GitHub/gst-airplay/build/meson-private/cmake_airplay with:
- "--trace-expand"
- "--trace-format=json-v1"
- "--no-warn-unused-cli"
- "--trace-redirect=cmake_trace.txt"
- "-DCMAKE_TOOLCHAIN_FILE=/home/marcel/GitHub/gst-airplay/build/meson-private/cmake_airplay/CMakeMesonToolchainFile.cmake"
- "."
-- Module search paths: ['/', '/opt', '/usr', '/usr/local']
-- CMake root: /usr/share/cmake-3.18
-- CMake architectures: ['x86_64-linux-gnu']
-- CMake lib search paths: ['lib', 'lib32', 'lib64', 'libx32', 'share', 'lib/x86_64-linux-gnu']
Preliminary CMake check failed. Aborting.
Run-time dependency airplay found: NO (tried pkgconfig and cmake)
meson.build:40:0: ERROR: Dependency "airplay" not found, tried pkgconfig and cmake
Is there something I'm doing wrong? Thanks!
knuesel commented
The problem is probably that airplay
from the RPiPlay project is not found. Try closely following the example in the "Building" section of the README (https://github.com/knuesel/gst-airplay#building). In particular, you should define the PKG_CONFIG_PATH
variable so that it includes the pkgconfig
directory created by the RPiPlay installation. It's shown in this part of the README example:
cd ../.. # Get out of the RPiPlay directory
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$PWD/RPiPlay/install/lib/pkgconfig
git clone https://github.com/knuesel/gst-airplay
cd gst-airplay
meson build
ninja -C build
marcelgoh commented
Thanks! I had blindly copied the export
command, so the directory was wrong.