Makemkv 1.10.8 and 1.10.9 on Centos 7

The place to discuss linux version of MakeMKV
Post Reply
beltrancd
Posts: 3
Joined: Sat Jan 13, 2018 12:26 pm

Makemkv 1.10.8 and 1.10.9 on Centos 7

Post by beltrancd »

I've been trying to build makemkv for my Centos 7 environment for the last 4 days and I'm having a lot of problems. This is what I've done so far:

Just FYI, I have used the following procedures:
Compile FFmpeg on CentOS (http://trac.ffmpeg.org/wiki/CompilationGuide/Centos)
MakeMKV 1.10.9 for Linux is available (http://www.makemkv.com/forum2/viewtopic.php?f=3&t=224)

----------------------------------------------------------------------------------
1- First attempt

- ffmpeg latest snapshot using x264 latest snapshot (0.155.2893)
- I get an error when I try to compile makemkv-oss
- reason: for what I read on several posts all over, it looks like the problem is related to the ffmpeg version > 3.4

there is a post on this forum about exactly the same error (back in Apr 2017) but there are NO responses :(
http://www.makemkv.com/forum2/viewtopic.php?f=3&t=16085

Code: Select all

libffabi/src/ffabi.c: In function 'ffm_audio_encode_get_info':
libffabi/src/ffabi.c:454:28: error: 'CODEC_FLAG_GLOBAL_HEADER' undeclared (first use in this function)
     if ((ctx->avctx->flags&CODEC_FLAG_GLOBAL_HEADER)!=0)
make: *** [out/libmakemkv.so.1.full] Error 1
----------------------------------------------------------------------------------
2- So, this is my second attempt using ffmpeg 3.4

- ffmpeg version 3.4.1 using x264 latest snapshot (0.155.2893)
- I get an error when I try to compile ffmpeg
- reason: I was using a x264 version too new for the ffmpeg 3.4.1. After ffmpeg was released there was a x264 commit which dropped the 'x264_bit_depth' global variable.
(http://git.videolan.org/?p=x264.git;a=c ... 22e57127db)

Code: Select all

libavcodec/libx264.c: In function 'X264_frame':
libavcodec/libx264.c:282:9: error: 'x264_bit_depth' undeclared (first use in this function)
     if (x264_bit_depth > 8)
libavcodec/libx264.c:282:9: note: each undeclared identifier is reported only once for each function it appears in
libavcodec/libx264.c: In function 'X264_init_static':
libavcodec/libx264.c:892:9: error: 'x264_bit_depth' undeclared (first use in this function)
     if (x264_bit_depth == 8)
make: *** [libavcodec/libx264.o] Error 1
----------------------------------------------------------------------------------
3- This is my third (and fourth) attempts using the "correct" x264 versions

- ffmpeg version 3.4.1 using BOTH x264 last stable (0.152.2854) and the one recommended on the ffmpeg mailing list (0.148.2744)
- I get the following errors compiling makemkv-oss... respectively:

Code: Select all

/usr/bin/ld: /home/ffmpeg341/ffmpeg_build/lib/libavcodec.a(allcodecs.o): relocation R_X86_64_32 against `ff_h264_cuvid_hwaccel' can not be used when making a shared object; recompile with -fPIC
/home/ffmpeg341/ffmpeg_build/lib/libavcodec.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
make: *** [out/libmakemkv.so.1.full] Error 1

Code: Select all

/usr/bin/ld: /home/ffmpeg341/ffmpeg_build/lib/libx264.a(common.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/home/ffmpeg341/ffmpeg_build/lib/libx264.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
make: *** [out/libmakemkv.so.1.full] Error 1
----------------------------------------------------------------------------------

I would appreciate any suggestion !!
HelperHi
Posts: 1
Joined: Sun Jan 28, 2018 11:44 pm

Re: Makemkv 1.10.8 and 1.10.9 on Centos 7

Post by HelperHi »

When I built makemkv I needed to add the rpm-fusion repo and then install ffmpeg and I needed to install the "Development" group through yum. Then I ran ./configure in the oss package and it told me there was a missing package so I installed it and did it again and again and so on for all 5 or 6 missing packages. After this i ran make and sudo make install on both the oss and bin packages and then makemkv was installed.
Post Reply