Page 1 of 1

makemkv for linux installation feedback -

Posted: Sun Oct 06, 2024 4:10 pm
by Majoreccles
I followed the instructions as described and encountered 2 errors which I solved but thought I would document them here:

When compiling ffmpeg for libfdk-aac I got:

user@laptop:~/Downloads/makemkv/ffmpeg-7.1$ ./configure --prefix=/tmp/ffmpeg --enable-static --disable-shared --enable-pic --enable-libfdk-aac
nasm/yasm not found or too old. Use --disable-x86asm for a crippled build.

If you think configure made a mistake, make sure you are using the latest
version from Git. If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.libera.chat.
Include the log file "ffbuild/config.log" produced by configure as this will help
solve the problem.

but this was easily fixed by:

sudo apt-get install nasm

Subsequently I got another error viz:

user@laptop:~/Downloads/makemkv/ffmpeg-7.1$ ./configure --prefix=/tmp/ffmpeg --enable-static --disable-shared --enable-pic --enable-libfdk-aac
ERROR: libfdk_aac not found

If you think configure made a mistake, make sure you are using the latest
version from Git. If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.libera.chat.
Include the log file "ffbuild/config.log" produced by configure as this will help
solve the problem.

but this was fixed by:

sudo apt-get install libfdk-aac-dev

After those 2 hiccups everything compiled in ffmpeg.

I had prevously built the bin and oss packages of makemkv so I recompiled those with an additional 'make clean' step to get a clean build.

Recommend that the install of nasm and libfdk-aac-dev be mentioned in your installation notes.

Otherwise all looks good :-)

Re: makemkv for linux installation feedback -

Posted: Mon Oct 07, 2024 8:27 am
by Rai4321
Compiling Guide for FFMpeg found here:
https://trac.ffmpeg.org/wiki/CompilationGuide
addresses this.

So if you are on Debian based distro, details are here:
https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu

and to get all the dependencies you will do:

Code: Select all

sudo apt update -qq && sudo apt -y install \
  autoconf \
  automake \
  build-essential \
  cmake \
  git-core \
  libass-dev \
  libfreetype6-dev \
  libgnutls28-dev \
  libmp3lame-dev \
  libsdl2-dev \
  libtool \
  libva-dev \
  libvdpau-dev \
  libvorbis-dev \
  libxcb1-dev \
  libxcb-shm0-dev \
  libxcb-xfixes0-dev \
  meson \
  ninja-build \
  pkg-config \
  texinfo \
  wget \
  yasm \
  zlib1g-dev
  

And then the on Ubuntu 20.04 you may also need this command:

Code: Select all

sudo apt -y install \
  libunistring-dev \
  libaom-dev \
  libdav1d-dev


NASM An assembler used by some libraries:

Code: Select all

sudo apt install nasm

libx264 - H.264 video encoder:

Code: Select all

sudo apt install libx264-dev

libx265 - H.265/HEVC video encoder:

Code: Select all

sudo apt install libx265-dev libnuma-dev

libvpx - VP8/VP9 video encoder/decoder:

Code: Select all

sudo apt install libvpx-dev

libfdk-aac - AAC audio encoder:

Code: Select all

sudo apt install libfdk-aac-dev

libopus - Opus audio decoder and encoder:

Code: Select all

sudo apt install libopus-dev

libdav1d - AV1 decoder, much faster than the one provided by libaom:

Code: Select all

sudo apt install libdav1d-dev




so all together it will be:
(Please note that Package: "libfdk-aac-dev" is in [non-free])
so need to add "non-free" to your "/etc/apt/sources.list"

Code: Select all

sudo apt update -qq && sudo apt -y install \
  autoconf \
  automake \
  build-essential \
  cmake \
  git \
  libaom-dev \
  libass-dev \
  libdav1d-dev \
  libfdk-aac-dev \
  libfreetype6-dev \
  libgnutls28-dev \
  libmp3lame-dev \
  libnuma-dev \
  libopus-dev \
  libsdl2-dev \
  libtool \
  libunistring-dev \
  libva-dev \
  libvdpau-dev \
  libvorbis-dev \
  libvpx-dev \
  libx264-dev \
  libx265-dev \
  libxcb1-dev \
  libxcb-shm0-dev \
  libxcb-xfixes0-dev \
  meson \
  nasm \
  ninja-build \
  pkg-config \
  texinfo \
  wget \
  yasm \
  zlib1g-dev
  
Happy compiling :)