I'm using Ubuntu 16.04 LTS. I have my makemkv license but I had to re-install it because I changed computer. In makemkv-oss-1.12.2, I ran ./configure alone, then with the following CFLAGS:
CFLAGS='-D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS' ./configure
but the make command gives the same errors. Below is the output of the said make command. Please provide a workaround. Thanks.
mkdir -p out
gcc -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS -D_linux_ -D_GNU_SOURCE -D_REENTRANT -shared -Wl,-z,defs -oout/libmakemkv.so.1.full -I./libebml/inc -DEBML_NO_READ -DEBML_STRICT_API -DEBML_DEBUG \
-I./libmatroska/inc -I./libmakemkv/inc -I./sstring/inc -I./makemkvgui/inc -I./libabi/inc \
-I./libffabi/inc libebml/src/EbmlBinary.cpp libebml/src/EbmlContexts.cpp libebml/src/EbmlCrc32.cpp libebml/src/EbmlDate.cpp libebml/src/EbmlDummy.cpp libebml/src/EbmlElement.cpp libebml/src/EbmlFloat.cpp libebml/src/EbmlHead.cpp libebml/src/EbmlMaster.cpp libebml/src/EbmlSInteger.cpp libebml/src/EbmlString.cpp libebml/src/EbmlSubHead.cpp libebml/src/EbmlUInteger.cpp libebml/src/EbmlUnicodeString.cpp libebml/src/EbmlVersion.cpp libebml/src/EbmlVoid.cpp libebml/src/IOCallback.cpp libebml/src/MemIOCallback.cpp libmatroska/src/FileKax.cpp libmatroska/src/KaxAttached.cpp libmatroska/src/KaxAttachments.cpp libmatroska/src/KaxBlock.cpp libmatroska/src/KaxBlockData.cpp libmatroska/src/KaxCluster.cpp libmatroska/src/KaxContexts.cpp libmatroska/src/KaxCues.cpp libmatroska/src/KaxCuesData.cpp libmatroska/src/KaxInfoData.cpp libmatroska/src/KaxSeekHead.cpp libmatroska/src/KaxSegment.cpp libmatroska/src/KaxTracks.cpp libmatroska/src/KaxVersion.cpp libmatroska/src/KaxSemantic.cpp libmakemkv/src/ebmlwrite.cpp libmakemkv/src/libmkv.cpp libmakemkv/src/version.cpp libmakemkv/src/world.cpp libmakemkv/src/stdstring.cpp sstring/src/sstring.cpp \
libabi/src/ossl_aes.c libabi/src/ossl_sha.c libabi/src/ossl_ec.c libabi/src/zlib.c libabi/src/xpat.c libabi/src/libm.c libabi/src/httplinux.cpp makemkvgui/src/api_linux.cpp libabi/src/sys_linux.c makemkvgui/src/spawn_posix.cpp libffabi/src/ffabi.c libffabi/src/mlp.c libffabi/src/log.c libffabi/src/audio_convert.c libffabi/src/audio_mix.c libffabi/src/audio_mix_matrix.c \
-DHAVE_BUILDINFO_H -Itmp -I/usr/local/include \
-fPIC -Xlinker -dy -Xlinker --version-script=libmakemkv/src/libmakemkv.vers \
-Xlinker -soname=libmakemkv.so.1 -lc -lstdc++ -lcrypto -lz -lexpat -L/usr/local/lib -lavcodec -pthread -lm -llzma -lz -lmp3lame -lm -lswresample -lm -lavutil -pthread -lm -lrt -lm -lrt
libffabi/src/ffabi.c: In function ‘ffabi_register_all’:
libffabi/src/ffabi.c:87:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_ac3_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:89:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_eac3_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:92:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_aac_latm_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:95:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_aac_fixed_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:98:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_dca_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:101:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mlp_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:104:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_truehd_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:107:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mp1_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:110:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mp2_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:113:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mp3_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:116:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_flac_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:120:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_ac3_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:123:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_ac3_fixed_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:126:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_aac_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:132:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_flac_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:135:5: warning: ‘av_register_codec_parser’ is deprecated [-Wdeprecated-declarations]
av_register_codec_parser(&ff_mlp_parser);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:5229:6: note: declared here
void av_register_codec_parser(AVCodecParser *parser);
^
libffabi/src/ffabi.c: In function ‘ffm_audio_encode_init’:
libffabi/src/ffabi.c:520:30: error: ‘CODEC_FLAG_GLOBAL_HEADER’ undeclared (first use in this function)
ctx->avctx->flags |= CODEC_FLAG_GLOBAL_HEADER;
^
libffabi/src/ffabi.c:520:30: note: each undeclared identifier is reported only once for each function it appears in
libffabi/src/ffabi.c: In function ‘ffm_audio_encode_get_info’:
libffabi/src/ffabi.c:721:28: error: ‘CODEC_FLAG_GLOBAL_HEADER’ undeclared (first use in this function)
if ((ctx->avctx->flags&CODEC_FLAG_GLOBAL_HEADER)!=0)
^
Makefile:74: recipe for target 'out/libmakemkv.so.1.full' failed
make: *** [out/libmakemkv.so.1.full] Error 1
andre@LAPTOP-ANDRE:~/Downloads/makemkv-oss-1.12.2$ cd ..
andre@LAPTOP-ANDRE:~/Downloads$ cd makemkv-oss-1.12.2
andre@LAPTOP-ANDRE:~/Downloads/makemkv-oss-1.12.2$ make > make_errors.txt
libffabi/src/ffabi.c: In function ‘ffabi_register_all’:
libffabi/src/ffabi.c:87:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_ac3_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:89:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_eac3_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:92:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_aac_latm_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:95:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_aac_fixed_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:98:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_dca_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:101:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mlp_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:104:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_truehd_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:107:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mp1_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:110:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mp2_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:113:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mp3_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:116:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_flac_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:120:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_ac3_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:123:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_ac3_fixed_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:126:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_aac_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:132:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_flac_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:135:5: warning: ‘av_register_codec_parser’ is deprecated [-Wdeprecated-declarations]
av_register_codec_parser(&ff_mlp_parser);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:5229:6: note: declared here
void av_register_codec_parser(AVCodecParser *parser);
^
libffabi/src/ffabi.c: In function ‘ffm_audio_encode_init’:
libffabi/src/ffabi.c:520:30: error: ‘CODEC_FLAG_GLOBAL_HEADER’ undeclared (first use in this function)
ctx->avctx->flags |= CODEC_FLAG_GLOBAL_HEADER;
^
libffabi/src/ffabi.c:520:30: note: each undeclared identifier is reported only once for each function it appears in
libffabi/src/ffabi.c: In function ‘ffm_audio_encode_get_info’:
libffabi/src/ffabi.c:721: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
andre@LAPTOP-ANDRE:~/Downloads/makemkv-oss-1.12.2$ CFLAGS='-D __STDC_CONSTANT_^C
andre@LAPTOP-ANDRE:~/Downloads/makemkv-oss-1.12.2$ make
mkdir -p out
gcc -D __STDC_CONSTANT_MACROS -D __STDC_LIMIT_MACROS -D __STDC_FORMAT_MACROS -D_linux_ -D_GNU_SOURCE -D_REENTRANT -shared -Wl,-z,defs -oout/libmakemkv.so.1.full -I./libebml/inc -DEBML_NO_READ -DEBML_STRICT_API -DEBML_DEBUG \
-I./libmatroska/inc -I./libmakemkv/inc -I./sstring/inc -I./makemkvgui/inc -I./libabi/inc \
-I./libffabi/inc libebml/src/EbmlBinary.cpp libebml/src/EbmlContexts.cpp libebml/src/EbmlCrc32.cpp libebml/src/EbmlDate.cpp libebml/src/EbmlDummy.cpp libebml/src/EbmlElement.cpp libebml/src/EbmlFloat.cpp libebml/src/EbmlHead.cpp libebml/src/EbmlMaster.cpp libebml/src/EbmlSInteger.cpp libebml/src/EbmlString.cpp libebml/src/EbmlSubHead.cpp libebml/src/EbmlUInteger.cpp libebml/src/EbmlUnicodeString.cpp libebml/src/EbmlVersion.cpp libebml/src/EbmlVoid.cpp libebml/src/IOCallback.cpp libebml/src/MemIOCallback.cpp libmatroska/src/FileKax.cpp libmatroska/src/KaxAttached.cpp libmatroska/src/KaxAttachments.cpp libmatroska/src/KaxBlock.cpp libmatroska/src/KaxBlockData.cpp libmatroska/src/KaxCluster.cpp libmatroska/src/KaxContexts.cpp libmatroska/src/KaxCues.cpp libmatroska/src/KaxCuesData.cpp libmatroska/src/KaxInfoData.cpp libmatroska/src/KaxSeekHead.cpp libmatroska/src/KaxSegment.cpp libmatroska/src/KaxTracks.cpp libmatroska/src/KaxVersion.cpp libmatroska/src/KaxSemantic.cpp libmakemkv/src/ebmlwrite.cpp libmakemkv/src/libmkv.cpp libmakemkv/src/version.cpp libmakemkv/src/world.cpp libmakemkv/src/stdstring.cpp sstring/src/sstring.cpp \
libabi/src/ossl_aes.c libabi/src/ossl_sha.c libabi/src/ossl_ec.c libabi/src/zlib.c libabi/src/xpat.c libabi/src/libm.c libabi/src/httplinux.cpp makemkvgui/src/api_linux.cpp libabi/src/sys_linux.c makemkvgui/src/spawn_posix.cpp libffabi/src/ffabi.c libffabi/src/mlp.c libffabi/src/log.c libffabi/src/audio_convert.c libffabi/src/audio_mix.c libffabi/src/audio_mix_matrix.c \
-DHAVE_BUILDINFO_H -Itmp -I/usr/local/include \
-fPIC -Xlinker -dy -Xlinker --version-script=libmakemkv/src/libmakemkv.vers \
-Xlinker -soname=libmakemkv.so.1 -lc -lstdc++ -lcrypto -lz -lexpat -L/usr/local/lib -lavcodec -pthread -lm -llzma -lz -lmp3lame -lm -lswresample -lm -lavutil -pthread -lm -lrt -lm -lrt
libffabi/src/ffabi.c: In function ‘ffabi_register_all’:
libffabi/src/ffabi.c:87:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_ac3_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:89:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_eac3_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:92:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_aac_latm_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:95:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_aac_fixed_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:98:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_dca_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:101:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mlp_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:104:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_truehd_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:107:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mp1_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:110:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mp2_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:113:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_mp3_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:116:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_flac_decoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:120:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_ac3_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:123:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_ac3_fixed_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:126:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_aac_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:132:5: warning: ‘avcodec_register’ is deprecated [-Wdeprecated-declarations]
avcodec_register(&ff_flac_encoder);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:4073:6: note: declared here
void avcodec_register(AVCodec *codec);
^
libffabi/src/ffabi.c:135:5: warning: ‘av_register_codec_parser’ is deprecated [-Wdeprecated-declarations]
av_register_codec_parser(&ff_mlp_parser);
^
In file included from libffabi/src/ffabi.c:22:0:
/usr/local/include/libavcodec/avcodec.h:5229:6: note: declared here
void av_register_codec_parser(AVCodecParser *parser);
^
libffabi/src/ffabi.c: In function ‘ffm_audio_encode_init’:
libffabi/src/ffabi.c:520:30: error: ‘CODEC_FLAG_GLOBAL_HEADER’ undeclared (first use in this function)
ctx->avctx->flags |= CODEC_FLAG_GLOBAL_HEADER;
^
libffabi/src/ffabi.c:520:30: note: each undeclared identifier is reported only once for each function it appears in
libffabi/src/ffabi.c: In function ‘ffm_audio_encode_get_info’:
libffabi/src/ffabi.c:721:28: error: ‘CODEC_FLAG_GLOBAL_HEADER’ undeclared (first use in this function)
if ((ctx->avctx->flags&CODEC_FLAG_GLOBAL_HEADER)!=0)
^
Makefile:74: recipe for target 'out/libmakemkv.so.1.full' failed
make: *** [out/libmakemkv.so.1.full] Error 1
Could not compile 1.12.2 on Ubuntu
Re: Could not compile 1.12.2 on Ubuntu
Version 1.12.2 can be compiled without any problem and runs OK on Ubuntu 14.04 and even Ubuntu 12.04.
Your CFLAGS are useless, simply forget them and strictly abide by the minimal recommendations for compiling under Linux.
It worked for me under Ubuntu 14.04.
Nevertheless, to compile under the deprecated Ubuntu 12.04, I had to introduce 3 modifications to the standard procedure :
1- ./configure CFLAGS='-D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS' (not sure this is absolutely necessary, but it mutes many "warnings")
Then steps 2 and 3 before typing "make"
2- Replace the string "-std=c++11" with "-std=c++0x" in the generated makefile (for compatibility with the old version of the compiler)
3- In repertory limakemkv/src, in file libmkv.cpp, move the following 4 lines on top of the #include directives (otherwise, inttypes.h is ignored)
#ifndef __STDC_FORMAT_MACROS
#define __STDC_FORMAT_MACROS 1
#endif
#include <inttypes.h>
There is a hidden requirement to be able to run makemkv under Linux (and Windows ?) : you need a full Java installation, otherwise some blu ray disks cannot be decoded.
Your CFLAGS are useless, simply forget them and strictly abide by the minimal recommendations for compiling under Linux.
It worked for me under Ubuntu 14.04.
Nevertheless, to compile under the deprecated Ubuntu 12.04, I had to introduce 3 modifications to the standard procedure :
1- ./configure CFLAGS='-D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS' (not sure this is absolutely necessary, but it mutes many "warnings")
Then steps 2 and 3 before typing "make"
2- Replace the string "-std=c++11" with "-std=c++0x" in the generated makefile (for compatibility with the old version of the compiler)
3- In repertory limakemkv/src, in file libmkv.cpp, move the following 4 lines on top of the #include directives (otherwise, inttypes.h is ignored)
#ifndef __STDC_FORMAT_MACROS
#define __STDC_FORMAT_MACROS 1
#endif
#include <inttypes.h>
There is a hidden requirement to be able to run makemkv under Linux (and Windows ?) : you need a full Java installation, otherwise some blu ray disks cannot be decoded.
-
- Posts: 4
- Joined: Sun Nov 12, 2017 1:40 am
Re: Could not compile 1.12.2 on Ubuntu
As I said in my post, I'm using Ubuntu 16.04. None of your suggested patches have solved my issue. Neither did installing Java. To get rid of the error about CODEC_FLAG_GLOBAL_HEADER undefined, I added the following line in libffabi/src/ffabi.c:
#define CODEC_FLAG_GLOBAL_HEADER 0x00400000
But now I'm getting the error:
/usr/bin/ld: /usr/local/lib/libavcodec.a(aacdec.o): relocation R_X86_64_32 against 'ff_aac_kbd_long_1024' can not be used when making a shared object; recompile with -fPIC
Which source file shall I recompile with -fPIC?
#define CODEC_FLAG_GLOBAL_HEADER 0x00400000
But now I'm getting the error:
/usr/bin/ld: /usr/local/lib/libavcodec.a(aacdec.o): relocation R_X86_64_32 against 'ff_aac_kbd_long_1024' can not be used when making a shared object; recompile with -fPIC
Which source file shall I recompile with -fPIC?
Re: Could not compile 1.12.2 on Ubuntu
Hello,
i have the problem when compiling makekmkv in a libreelec build tree as an addon i get the following errors:
For ffmpeg i use the version 4.0. And i saw that in the libavcodec part, in the file avcodec.h is not defined. With ffmpeg version 3.4 everything is ok.
Is there any trick that makemkv looks for?
i have the problem when compiling makekmkv in a libreelec build tree as an addon i get the following errors:
Code: Select all
libffabi/src/ffabi.c: In function 'ffm_audio_encode_init':
libffabi/src/ffabi.c:520:30: error: 'CODEC_FLAG_GLOBAL_HEADER' undeclared (first use in this function); did you mean 'AV_CODEC_FLAG_GLOBAL_HEADER'?
ctx->avctx->flags |= CODEC_FLAG_GLOBAL_HEADER;
^~~~~~~~~~~~~~~~~~~~~~~~
AV_CODEC_FLAG_GLOBAL_HEADER
libffabi/src/ffabi.c:520:30: note: each undeclared identifier is reported only once for each function it appears in
libffabi/src/ffabi.c: In function 'ffm_audio_encode_get_info':
libffabi/src/ffabi.c:721:28: error: 'CODEC_FLAG_GLOBAL_HEADER' undeclared (first use in this function); did you mean 'AV_CODEC_FLAG_GLOBAL_HEADER'?
if ((ctx->avctx->flags&CODEC_FLAG_GLOBAL_HEADER)!=0)
Code: Select all
COCEC_FLAG_GLOBAL_HEADER
Is there any trick that makemkv looks for
Code: Select all
AV_CODEC_GLOBAL_HEADER
Re: Could not compile 1.12.2 on Ubuntu
Well, I did not suggest any patch. I simply reported my experience with older versions of Ubuntu. I have no experience with 16.04, I wait for 18.04.andreblanchet wrote:As I said in my post, I'm using Ubuntu 16.04. None of your suggested patches have solved my issue. Neither did installing Java....
The source files of MakeMKV do compile under Ubuntu 14.04 without any patch, strctly sticking to the MINIMAL recommendations for compiling the sources, as documented elsewhere on this forum.
In other words, I simply decompressed the sources, and only used the commands ./configure, then make, then sudo make install when applicable on each decompressed source file.
I found no incentive to try a newer version of ffmpeg and complexify the process. I stick to the generic version of VLC with each Ubuntu dstrib.
Keep it simple stupid, it works !
If not, please search on the Net by typing your fatal error messages and you will find answers on other forums. Flooding this forum with long listings under an alarming title is not helpful.
-
- Posts: 4
- Joined: Sun Nov 12, 2017 1:40 am
Re: Could not compile 1.12.2 on Ubuntu
Yeah, I installed the latest ffmpeg. In theory, upgrading should mean improvement! It's sad that the makemkv developers do not test compiling the sources they distribute. By the way, I hate C++ like hell. Thanks anyway.
-
- Posts: 4
- Joined: Sun Nov 12, 2017 1:40 am
Re: Could not compile 1.12.2 on Ubuntu
I solved my issue by removing ffmpeg 4.0 and re-compiling it with --enable_shared. In fact, here's the command line I used for ffmpeg 4.0:
./configure --enable-libmp3lame --disable-x86asm --enable-pic --enable-shared
And for the benefit of those who want to install makemkv 1.12.2, don't forget to add the following line in libffabi/src/ffabi.c to avoid a compilation error:
#define CODEC_FLAG_GLOBAL_HEADER 0x00400000
./configure --enable-libmp3lame --disable-x86asm --enable-pic --enable-shared
And for the benefit of those who want to install makemkv 1.12.2, don't forget to add the following line in libffabi/src/ffabi.c to avoid a compilation error:
#define CODEC_FLAG_GLOBAL_HEADER 0x00400000
-
- Posts: 5
- Joined: Tue Dec 24, 2013 8:01 am
Re: Could not compile 1.12.2 on Ubuntu
Thank you! I met similar issue on Fedora 28. With your advise it compiled well now.andreblanchet wrote:I solved my issue by removing ffmpeg 4.0 and re-compiling it with --enable_shared. In fact, here's the command line I used for ffmpeg 4.0:
./configure --enable-libmp3lame --disable-x86asm --enable-pic --enable-shared
And for the benefit of those who want to install makemkv 1.12.2, don't forget to add the following line in libffabi/src/ffabi.c to avoid a compilation error:
#define CODEC_FLAG_GLOBAL_HEADER 0x00400000