Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Confused about dependencies in build instructions. #214

Closed
irthomasthomas opened this issue Mar 22, 2023 · 4 comments
Closed

Confused about dependencies in build instructions. #214

irthomasthomas opened this issue Mar 22, 2023 · 4 comments

Comments

@irthomasthomas
Copy link

This section confuses me. I want to build mpv with all the features, and I thought mpv-build would do that. But then below it says: "Here is an incomplete list of essential dependencies... If they are missing, these features will be disabled silently. This includes some dependencies which could be considered essential."

So, I am not sure how I am supposed to proceed in order to build all essential dependencies to get a fully featured mpv build. Any help is appreciated.

Dependencies
Essential dependencies (incomplete list):

gcc or clang, yasm, git
autoconf/autotools (for libass)
meson, ninja (libplacebo)
X development headers (xlib, X extensions, vdpau, GL, Xv, ...)
Audio output development headers (libasound, pulseaudio)
fribidi, freetype, fontconfig development headers (for libass)
libjpeg
OpenSSL or GnuTLS development headers if you want to open https links (this is also needed to make youtube-dl interaction work)
youtube-dl (at runtime) if you want to play Youtube videos directly (a builtin mpv script will call it)
libx264/libmp3lame/libfdk-aac if you want to use encoding (you have to add these options explicitly to the ffmpeg options, as ffmpeg won't autodetect these libraries; see next section)
Note: most dependencies are optional and autodetected. If they're missing, these features will be disabled silently. This includes some dependencies which could be considered essential.

@CounterPillow
Copy link

mpv-build includes libass, libplacebo and ffmpeg. Any dependency beyond that is up to you to install. You can see what is used on e.g. Debian here: https://github.com/mpv-player/mpv-build/blob/master/debian/control#L6

@irthomasthomas
Copy link
Author

@CounterPillow I see, thanks. Would you be able to help me run down a build problem? I installed all the packages from that link, and I also did apt-get build-dep mpv, but it's building without GLSL:

Build type: native build
Project name: libplacebo
Project version: 6.266.0
C compiler for the host machine: cc (gcc 11.3.0 "cc (Ubuntu 11.3.0-1ubuntu122.04) 11.3.0")
C linker for the host machine: cc ld.bfd 2.38
C++ compiler for the host machine: c++ (gcc 11.3.0 "c++ (Ubuntu 11.3.0-1ubuntu1
22.04) 11.3.0")
C++ linker for the host machine: c++ ld.bfd 2.38
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C supports arguments -Wincompatible-pointer-types: YES
Compiler for C supports link arguments -Wl,--exclude-libs=ALL: YES
Library m found: YES
Program python3 found: YES (/usr/bin/python3)
Run-time dependency threads found: YES
Header "pthread.h" has symbol "pthread_condattr_setclock" with dependency threads: YES
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Run-time dependency libunwind found: YES 1.3.2
Library execinfo found: NO
Checking for function "backtrace_symbols" with dependency -lexecinfo: YES
Check usable header "dbghelp.h" : NO
Library dl found: YES
Run-time dependency shaderc found: NO (tried pkgconfig, pkgconfig, pkgconfig and system)
Library glslang-default-resource-limits found: NO
Library SPIRV found: NO
Library SPIRV found: NO
Check usable header "d3d11.h" : NO
Check usable header "d3d11_4.h" : NO
Check usable header "dxgi1_6.h" : NO
Run-time dependency spirv-cross-c-shared found: YES 0.44.0
Library version found: NO
Library dl found: YES
Run-time dependency vulkan found: YES 1.3.204
Run-time dependency lcms2 found: YES 2.15
src/meson.build:144: WARNING: Building without any GLSL compiler (shaderc, glslang), but with APIs required that require one (vulkan, d3d11). This build is very likely to be very limited in functionality!

@CounterPillow
Copy link

Install glslang-dev. If it still doesn't work, then your distro's glslang is too old.

@Dudemanguy
Copy link
Member

User was just missing glslang as noted.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants