Closed zikoops closed 3 years ago
Hi. You have installed FFmpeg in a not default folder (--prefix=/root/ffmpeg_build
).
So you must set the same path in the compiler flags for Nginx. You can check how to do that on its documentation.
I have same problem. So, how to set path param to ffmpeg_build when build nginx? Thank you!
Take a look here http://nginx.org/en/docs/configure.html. Look for --with-cc-opt
. Would be something like --with-cc-opt="-I /root/ffmpeg_build/include"
Thank you. I builed successful. And how to get thumb of video on path: /home/mypc/video.mp4
The easiest way is to configure the root
folder to point to the desired folder, like
location ~ /thumbs(.*) {
video_thumbextractor;
video_thumbextractor_video_filename $1;
video_thumbextractor_video_second $arg_second;
video_thumbextractor_image_width $arg_width;
video_thumbextractor_image_height $arg_height;
root /home/mypc;
}
I suggest you to not use a folder where there are other files than the videos you want to expose thumbs for security reasons.
You can find information like that on Nginx documentation.
I follow your config but just get 400 Bad Request, with url: http://192.168.0.3:8080/thumbs/video.mp4?second=10
Where I was wrong?
Look at the error logs. Probably there is a message to help you. (maybe necessary change the log level to INFO or DEBUG)
The old issue has been solved but i got a new issue. Please help me to solve this:
objs/addon/src/ngx_http_video_thumbextractor_module.o \ objs/ngx_modules.o \ -Wl,-rpath,/root/bin/ -Wl,-E -ldl -lpthread -lpthread -lcrypt -L/usr/local/lib -lluajit-5.1 -lm -lcrypto -ldl -lpthread -lrt -lavformat -lavcodec -lavutil -lavfilter -lswscale -lswresample -lpostproc -ljpeg -lpcre -lssl -lcrypto -ldl -lz \ -Wl,-E /usr/bin/ld: cannot find -lavformat collect2: ld returned 1 exit status make[1]: [objs/nginx] Error 1 make[1]: Leaving directory `/tmp/nginx-1.10.1' make: [build] Error 2
The reason is the same. Since you set a custom path for FFmpeg you must add --with-ld-opt="-L /root/ffmpeg_build/lib"
to be possible for Nginx to find the libraries. And possibly you will need to export the LD_LIBRARY_PATH environment variable when trying to execute the Nginx
Thanks for your quickly support! This is my nginx configure command:
./configure --with-ld-opt="-Wl,-rpath,/usr/local/lib/" --with-ld-opt="-L /root/ffmpeg_build/lib" --with-cc-opt="-I /root/ffmpeg_build/include" --with-http_flv_module --with-file-aio --with-threads --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_gzip_static_module --with-http_auth_request_module --with-http_secure_link_module --with-stream --with-stream_ssl_module --add-module=/tmp/ngx_devel_kit-0.3.0 --add-module=/tmp/lua-nginx-module-0.10.9rc8 --add-module=/tmp/nginx-vod-module --add-module=/tmp/nginx-video-thumbextractor-module
I ran it and continue met some errors like this:
-L /root/ffmpeg_build/lib -Wl,-E -ldl -lpthread -lpthread -lcrypt -L/usr/local/lib -lluajit-5.1 -lm -lcrypto -ld -Wl,-E /root/ffmpeg_build/lib/libavcodec.a(libfdk-aacdec.o): In function
fdk_aac_decode_frame':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:322: undefined reference to aacDecoder_Fill' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:328: undefined reference to
aacDecoder_DecodeFrame'
/root/ffmpeg_build/lib/libavcodec.a(libfdk-aacdec.o): In function get_stream_info': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:88: undefined reference to
aacDecoder_GetStreamInfo'
/root/ffmpeg_build/lib/libavcodec.a(libfdk-aacdec.o): In function fdk_aac_decode_flush': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:366: undefined reference to
aacDecoder_SetParam'
/root/ffmpeg_build/lib/libavcodec.a(libfdk-aacdec.o): In function fdk_aac_decode_close': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:201: undefined reference to
aacDecoder_Close'
/root/ffmpeg_build/lib/libavcodec.a(libfdk-aacdec.o): In function fdk_aac_decode_init': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:213: undefined reference to
aacDecoder_Open'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:220: undefined reference to aacDecoder_ConfigRaw' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:227: undefined reference to
aacDecoder_SetParam'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:251: undefined reference to aacDecoder_SetParam' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:260: undefined reference to
aacDecoder_AncDataInit'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:269: undefined reference to aacDecoder_SetParam' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:276: undefined reference to
aacDecoder_SetParam'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:283: undefined reference to aacDecoder_SetParam' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:290: undefined reference to
aacDecoder_SetParam'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacdec.c:297: undefined reference to aacDecoder_SetParam' /root/ffmpeg_build/lib/libavcodec.a(libfdk-aacenc.o): In function
aac_encode_close':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacenc.c:97: undefined reference to aacEncClose' /root/ffmpeg_build/lib/libavcodec.a(libfdk-aacenc.o): In function
aac_encode_frame':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacenc.c:357: undefined reference to aacEncEncode' /root/ffmpeg_build/lib/libavcodec.a(libfdk-aacenc.o): In function
aac_encode_init':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacenc.c:114: undefined reference to aacEncOpen' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacenc.c:123: undefined reference to
aacEncoder_SetParam'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacenc.c:130: undefined reference to aacEncoder_SetParam' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacenc.c:138: undefined reference to
aacEncoder_SetParam'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacenc.c:172: undefined reference to aacEncoder_SetParam' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacenc.c:179: undefined reference to
aacEncoder_SetParam'
/root/ffmpeg_build/lib/libavcodec.a(libfdk-aacenc.o):/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacenc.c:197: more und
/root/ffmpeg_build/lib/libavcodec.a(libfdk-aacenc.o): In function aac_encode_init': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacenc.c:276: undefined reference to
aacEncEncode'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libfdk-aacenc.c:282: undefined reference to aacEncInfo' /root/ffmpeg_build/lib/libavcodec.a(libmp3lame.o): In function
mp3lame_encode_frame':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:224: undefined reference to lame_encode_flush' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:200: undefined reference to
lame_encode_buffer'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:203: undefined reference to lame_encode_buffer_int' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:216: undefined reference to
lame_encode_buffer_float'
/root/ffmpeg_build/lib/libavcodec.a(libmp3lame.o): In function mp3lame_encode_close': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:87: undefined reference to
lame_close'
/root/ffmpeg_build/lib/libavcodec.a(libmp3lame.o): In function mp3lame_encode_init': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:99: undefined reference to
lame_init'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:103: undefined reference to lame_set_num_channels' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:104: undefined reference to
lame_set_mode'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:107: undefined reference to lame_set_in_samplerate' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:108: undefined reference to
lame_set_out_samplerate'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:112: undefined reference to lame_set_quality' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:116: undefined reference to
lame_set_VBR'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:117: undefined reference to lame_set_VBR_quality' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:121: undefined reference to
lame_set_VBR'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:122: undefined reference to lame_set_VBR_mean_bitrate_kbps' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:124: undefined reference to
lame_set_brate'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:130: undefined reference to lame_set_lowpassfreq' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:133: undefined reference to
lame_set_bWriteVbrTag'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:136: undefined reference to lame_set_disable_reservoir' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:139: undefined reference to
lame_init_params'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:145: undefined reference to lame_get_encoder_delay' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libmp3lame.c:148: undefined reference to
lame_get_framesize'
/root/ffmpeg_build/lib/libavcodec.a(libopusdec.o): In function libopus_flush': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusdec.c:186: undefined reference to
opus_multistream_decoder_ctl'
/root/ffmpeg_build/lib/libavcodec.a(libopusdec.o): In function libopus_decode': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusdec.c:151: undefined reference to
opus_multistream_decode_float'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusdec.c:147: undefined reference to opus_multistream_decode' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusdec.c:156: undefined reference to
opus_strerror'
/root/ffmpeg_build/lib/libavcodec.a(libopusdec.o): In function libopus_decode_close': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusdec.c:129: undefined reference to
opus_multistream_decoder_destroy'
/root/ffmpeg_build/lib/libavcodec.a(libopusdec.o): In function libopus_decode_init': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusdec.c:95: undefined reference to
opus_multistream_decoder_create'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusdec.c:99: undefined reference to opus_strerror' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusdec.c:105: undefined reference to
opus_multistream_decoder_ctl'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusdec.c:107: undefined reference to opus_strerror' /root/ffmpeg_build/lib/libavcodec.a(libopusenc.o): In function
libopus_encode':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:466: undefined reference to opus_multistream_encode' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:462: undefined reference to
opus_multistream_encode_float'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:471: undefined reference to opus_strerror' /root/ffmpeg_build/lib/libavcodec.a(libopusenc.o): In function
libopus_encode_close':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:509: undefined reference to opus_multistream_encoder_destroy' /root/ffmpeg_build/lib/libavcodec.a(libopusenc.o): In function
libopus_encode_init':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:327: undefined reference to opus_multistream_encoder_create' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:337: undefined reference to
opus_multistream_surround_encoder_create
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:344: undefined reference to opus_strerror' /root/ffmpeg_build/lib/libavcodec.a(libopusenc.o): In function
libopus_configure_encoder':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:118: undefined reference to opus_multistream_encoder_ctl' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:120: undefined reference to
opus_strerror'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:125: undefined reference to opus_multistream_encoder_ctl' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:128: undefined reference to
opus_strerror'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:131: undefined reference to opus_multistream_encoder_ctl' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:133: undefined reference to
opus_strerror'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:136: undefined reference to opus_multistream_encoder_ctl' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:139: undefined reference to
opus_strerror'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:142: undefined reference to opus_multistream_encoder_ctl' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:145: undefined reference to
opus_strerror'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:150: undefined reference to opus_multistream_encoder_ctl' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:153: undefined reference to
opus_strerror'
/root/ffmpeg_build/lib/libavcodec.a(libopusenc.o): In function libopus_encode_init': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:389: undefined reference to
opus_multistream_encoder_ctl'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:391: undefined reference to opus_strerror' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libopusenc.c:405: undefined reference to
opus_multistream_encoder_destroy'
/root/ffmpeg_build/lib/libavcodec.a(libvorbisenc.o): In function libvorbis_encode_frame': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:287: undefined reference to
vorbis_analysis_buffer'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:294: undefined reference to vorbis_analysis_wrote' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:310: undefined reference to
vorbis_analysis_blockout'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:311: undefined reference to vorbis_analysis' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:313: undefined reference to
vorbis_bitrate_addblock'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:317: undefined reference to vorbis_bitrate_flushpacket' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:302: undefined reference to
vorbis_analysis_wrote'
/root/ffmpeg_build/lib/libavcodec.a(libvorbisenc.o): In function libvorbis_encode_close': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:180: undefined reference to
vorbis_analysis_wrote'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:182: undefined reference to vorbis_block_clear' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:183: undefined reference to
vorbis_dsp_clear'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:184: undefined reference to vorbis_info_clear' /root/ffmpeg_build/lib/libavcodec.a(libvorbisenc.o): In function
libvorbis_encode_init':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:203: undefined reference to vorbis_info_init' /root/ffmpeg_build/lib/libavcodec.a(libvorbisenc.o): In function
libvorbis_setup':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:98: undefined reference to vorbis_encode_setup_vbr' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:107: undefined reference to
vorbis_encode_setup_managed'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:114: undefined reference to vorbis_encode_ctl' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:121: undefined reference to
vorbis_encode_ctl'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:127: undefined reference to vorbis_encode_ctl' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:160: undefined reference to
vorbis_encode_setup_init'
/root/ffmpeg_build/lib/libavcodec.a(libvorbisenc.o): In function libvorbis_encode_init': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:208: undefined reference to
vorbis_analysis_init'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:214: undefined reference to vorbis_block_init' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:220: undefined reference to
vorbis_comment_init'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:222: undefined reference to vorbis_comment_add_tag' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:224: undefined reference to
vorbis_analysis_headerout'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisenc.c:257: undefined reference to vorbis_comment_clear' /root/ffmpeg_build/lib/libavcodec.a(libvpxdec.o): In function
decode_frame':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:182: undefined reference to vpx_codec_decode' /root/ffmpeg_build/lib/libavcodec.a(libvpxdec.o): In function
vpx_decode':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:242: undefined reference to vpx_codec_get_frame' /root/ffmpeg_build/lib/libavcodec.a(libvpxdec.o): In function
decode_frame':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:182: undefined reference to vpx_codec_decode' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:183: undefined reference to
vpx_codec_error'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:184: undefined reference to vpx_codec_error_detail' /root/ffmpeg_build/lib/libavcodec.a(libvpxdec.o): In function
vpx_decode':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:244: undefined reference to vpx_codec_get_frame' /root/ffmpeg_build/lib/libavcodec.a(libvpxdec.o): In function
decode_frame':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:183: undefined reference to vpx_codec_error' /root/ffmpeg_build/lib/libavcodec.a(libvpxdec.o): In function
vpx_decode':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:222: undefined reference to vpx_codec_vp8_dx_algo' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:222: undefined reference to
vpx_codec_vp9_dx_algo'
/root/ffmpeg_build/lib/libavcodec.a(libvpxdec.o): In function vpx_init': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:54: undefined reference to
vpx_codec_version_str'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:55: undefined reference to vpx_codec_build_config' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:57: undefined reference to
vpx_codec_dec_init_ver'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:60: undefined reference to vpx_codec_error' /root/ffmpeg_build/lib/libavcodec.a(libvpxdec.o): In function
vp9_init':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:323: undefined reference to vpx_codec_vp9_dx_algo' /root/ffmpeg_build/lib/libavcodec.a(libvpxdec.o): In function
vp8_init':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:304: undefined reference to vpx_codec_vp8_dx_algo' /root/ffmpeg_build/lib/libavcodec.a(libvpxdec.o): In function
vpx_free':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:295: undefined reference to vpx_codec_destroy' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxdec.c:297: undefined reference to
vpx_codec_destroy'
/root/ffmpeg_build/lib/libavcodec.a(libvpxenc.o): In function vpx_encode': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:1037: undefined reference to
vpx_codec_encode'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:1045: undefined reference to vpx_codec_encode' /root/ffmpeg_build/lib/libavcodec.a(libvpxenc.o): In function
queue_frames':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:904: undefined reference to vpx_codec_get_cx_data' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:906: undefined reference to
vpx_codec_get_cx_data'
/root/ffmpeg_build/lib/libavcodec.a(libvpxenc.o): In function log_encoder_error': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:152: undefined reference to
vpx_codec_error'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:153: undefined reference to vpx_codec_error_detail' /root/ffmpeg_build/lib/libavcodec.a(libvpxenc.o): In function
codecctl_int':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:262: undefined reference to vpx_codec_control_' /root/ffmpeg_build/lib/libavcodec.a(libvpxenc.o): In function
vpx_init':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:465: undefined reference to vpx_codec_get_caps' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:468: undefined reference to
vpx_codec_version_str'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:469: undefined reference to vpx_codec_build_config' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:474: undefined reference to
vpx_codec_enc_config_default'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:475: undefined reference to vpx_codec_err_to_string' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:644: undefined reference to
vpx_codec_enc_init_ver'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:652: undefined reference to vpx_codec_enc_init_ver' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:737: undefined reference to
vpx_img_wrap'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:745: undefined reference to vpx_img_wrap' /root/ffmpeg_build/lib/libavcodec.a(libvpxenc.o): In function
vp9_init':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:1209: undefined reference to vpx_codec_vp9_cx' /root/ffmpeg_build/lib/libavcodec.a(libvpxenc.o): In function
codecctl_intp':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:284: undefined reference to vpx_codec_control_' /root/ffmpeg_build/lib/libavcodec.a(libvpxenc.o): In function
vpx_free':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:308: undefined reference to vpx_codec_destroy' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:310: undefined reference to
vpx_codec_destroy'
/root/ffmpeg_build/lib/libavcodec.a(libvpxenc.o): In function vp8_init': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpxenc.c:1180: undefined reference to
vpx_codec_vp8_cx'
/root/ffmpeg_build/lib/libavcodec.a(libx264.o): In function X264_frame': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:280: undefined reference to
x264_picture_init'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:282: undefined reference to x264_bit_depth' /root/ffmpeg_build/lib/libavcodec.a(libx264.o): In function
reconfig_encoder':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:266: undefined reference to x264_encoder_reconfig' /root/ffmpeg_build/lib/libavcodec.a(libx264.o): In function
X264_frame':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:342: undefined reference to x264_encoder_delayed_frames' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:336: undefined reference to
x264_encoder_encode'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:336: undefined reference to x264_encoder_encode' /root/ffmpeg_build/lib/libavcodec.a(libx264.o): In function
reconfig_encoder':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:181: undefined reference to x264_encoder_reconfig' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:186: undefined reference to
x264_encoder_reconfig'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:193: undefined reference to x264_encoder_reconfig' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:213: undefined reference to
x264_encoder_reconfig'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:219: undefined reference to x264_encoder_reconfig' /root/ffmpeg_build/lib/libavcodec.a(libx264.o): In function
X264_frame':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:342: undefined reference to x264_encoder_delayed_frames' /root/ffmpeg_build/lib/libavcodec.a(libx264.o): In function
reconfig_encoder':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:206: undefined reference to x264_encoder_reconfig' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:199: undefined reference to
x264_encoder_reconfig'
/root/ffmpeg_build/lib/libavcodec.a(libx264.o): In function X264_frame': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:336: undefined reference to
x264_encoder_encode'
/root/ffmpeg_build/lib/libavcodec.a(libx264.o): In function X264_init_static': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:892: undefined reference to
x264_bit_depth'
/root/ffmpeg_build/lib/libavcodec.a(libx264.o): In function X264_close': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:392: undefined reference to
x264_encoder_close'
/root/ffmpeg_build/lib/libavcodec.a(libx264.o): In function X264_init': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:467: undefined reference to
x264_param_default'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:472: undefined reference to x264_param_default_preset' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:494: undefined reference to
x264_param_parse'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:524: undefined reference to x264_param_parse' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:585: undefined reference to
x264_levels'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:583: undefined reference to x264_levels' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:623: undefined reference to
x264_param_parse'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:624: undefined reference to x264_param_parse' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:625: undefined reference to
x264_param_parse'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:626: undefined reference to x264_param_parse' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:674: undefined reference to
x264_param_apply_fastfirstpass'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:730: undefined reference to x264_param_apply_profile' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:782: undefined reference to
x264_param_parse'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:784: undefined reference to x264_param_parse' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:796: undefined reference to
x264_param_parse'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:814: undefined reference to x264_encoder_open_152' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx264.c:823: undefined reference to
x264_encoder_headers'
/root/ffmpeg_build/lib/libavcodec.a(libx265.o): In function libx265_encode_init_csp': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx265.c:380: undefined reference to
x265_api_get_131'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx265.c:382: undefined reference to x265_api_get_131' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx265.c:384: undefined reference to
x265_api_get_131'
/root/ffmpeg_build/lib/libavcodec.a(libx265.o): In function libx265_encode_init': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libx265.c:82: undefined reference to
x265_api_get_131'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libx265.c:84: undefined reference to x265_api_get_131' /root/ffmpeg_build/lib/libavcodec.a(libvpx.o): In function
ff_vp9_init_static':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpx.c:74: undefined reference to vpx_codec_version' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpx.c:75: undefined reference to
vpx_codec_version'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpx.c:75: undefined reference to vpx_codec_version' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpx.c:79: undefined reference to
vpx_codec_version'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpx.c:80: undefined reference to vpx_codec_version' /root/ffmpeg_build/lib/libavcodec.a(libvpx.o):/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpx.c:80: more undefined referenc /root/ffmpeg_build/lib/libavcodec.a(libvpx.o): In function
ff_vp9_init_static':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpx.c:82: undefined reference to vpx_codec_vp9_cx' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvpx.c:82: undefined reference to
vpx_codec_get_caps'
/root/ffmpeg_build/lib/libavfilter.a(avf_showcqt.o): In function common_uninit': /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:147: undefined reference to
av_fft_end'
/root/ffmpeg_build/lib/libavfilter.a(avf_showcqt.o): In function plot_cqt': /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:1151: undefined reference to
av_fft_permute'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:1152: undefined reference to av_fft_calc' /root/ffmpeg_build/lib/libavfilter.a(avf_showcqt.o): In function
render_freetype':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:522: undefined reference to FT_Init_FreeType' /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:525: undefined reference to
FT_New_Face'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:528: undefined reference to FT_Set_Char_Size' /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:531: undefined reference to
FT_Load_Char'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:534: undefined reference to FT_Set_Char_Size' /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:543: undefined reference to
FT_Load_Char'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:573: undefined reference to FT_Done_Face' /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:574: undefined reference to
FT_Done_FreeType'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:579: undefined reference to FT_Done_Face' /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:580: undefined reference to
FT_Done_FreeType'
/root/ffmpeg_build/lib/libavfilter.a(avf_showcqt.o): In function config_output': /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showcqt.c:1383: undefined reference to
av_fft_init'
/root/ffmpeg_build/lib/libavfilter.a(avf_showfreqs.o): In function config_output': /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showfreqs.c:184: undefined reference to
av_fft_end'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showfreqs.c:185: undefined reference to av_fft_init' /root/ffmpeg_build/lib/libavfilter.a(avf_showfreqs.o): In function
plot_freqs':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showfreqs.c:402: undefined reference to av_fft_permute' /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showfreqs.c:403: undefined reference to
av_fft_calc'
/root/ffmpeg_build/lib/libavfilter.a(avf_showfreqs.o): In function uninit': /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showfreqs.c:485: undefined reference to
av_fft_end'
/root/ffmpeg_build/lib/libavfilter.a(avf_showspectrum.o): In function run_channel_fft': /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showspectrum.c:482: undefined reference to
av_fft_permute'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showspectrum.c:483: undefined reference to av_fft_calc' /root/ffmpeg_build/lib/libavfilter.a(avf_showspectrum.o): In function
config_output':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showspectrum.c:348: undefined reference to av_fft_end' /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showspectrum.c:355: undefined reference to
av_fft_init'
/root/ffmpeg_build/lib/libavfilter.a(avf_showspectrum.o): In function uninit': /tmp/ffmpeg_sources/ffmpeg/libavfilter/avf_showspectrum.c:235: undefined reference to
av_fft_end'
/root/ffmpeg_build/lib/libavfilter.a(f_select.o): In function config_input': /tmp/ffmpeg_sources/ffmpeg/libavfilter/f_select.c:242: undefined reference to
av_pixelutils_get_sad_fn'
/root/ffmpeg_build/lib/libavfilter.a(f_sendcmd.o): In function init': /tmp/ffmpeg_sources/ffmpeg/libavfilter/f_sendcmd.c:390: undefined reference to
av_file_map'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/f_sendcmd.c:398: undefined reference to av_file_unmap' /tmp/ffmpeg_sources/ffmpeg/libavfilter/f_sendcmd.c:403: undefined reference to
av_file_unmap'
/root/ffmpeg_build/lib/libavfilter.a(vaf_spectrumsynth.o): In function config_output': /tmp/ffmpeg_sources/ffmpeg/libavfilter/vaf_spectrumsynth.c:189: undefined reference to
av_fft_init'
/root/ffmpeg_build/lib/libavfilter.a(vaf_spectrumsynth.o): In function synth_window': /tmp/ffmpeg_sources/ffmpeg/libavfilter/vaf_spectrumsynth.c:360: undefined reference to
av_fft_permute'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vaf_spectrumsynth.c:361: undefined reference to av_fft_calc' /root/ffmpeg_build/lib/libavfilter.a(vaf_spectrumsynth.o): In function
uninit':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vaf_spectrumsynth.c:499: undefined reference to av_fft_end' /root/ffmpeg_build/lib/libavfilter.a(vf_curves.o): In function
parse_psfile':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_curves.c:357: undefined reference to av_file_map' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_curves.c:398: undefined reference to
av_file_unmap'
/root/ffmpeg_build/lib/libavfilter.a(vf_deshake.o): In function init': /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_deshake.c:347: undefined reference to
av_pixelutils_get_sad_fn'
/root/ffmpeg_build/lib/libavfilter.a(vf_drawtext.o): In function load_textfile': /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:573: undefined reference to
av_file_map'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:587: undefined reference to av_file_unmap' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:581: undefined reference to
av_file_unmap'
/root/ffmpeg_build/lib/libavfilter.a(vf_drawtext.o): In function load_glyph': /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:319: undefined reference to
FT_Load_Char'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:330: undefined reference to FT_Get_Glyph' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:344: undefined reference to
FT_Glyph_To_Bitmap'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:336: undefined reference to FT_Glyph_StrokeBorder' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:337: undefined reference to
FT_Glyph_To_Bitmap'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:356: undefined reference to FT_Glyph_Get_CBox' /root/ffmpeg_build/lib/libavfilter.a(vf_drawtext.o): In function
glyph_enu_free':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:790: undefined reference to FT_Done_Glyph' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:791: undefined reference to
FT_Done_Glyph'
/root/ffmpeg_build/lib/libavfilter.a(vf_drawtext.o): In function draw_text': /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:1367: undefined reference to
FT_Get_Kerning'
/root/ffmpeg_build/lib/libavfilter.a(vf_drawtext.o): In function set_fontsize': /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:383: undefined reference to
FT_Set_Pixel_Sizes'
/root/ffmpeg_build/lib/libavfilter.a(vf_drawtext.o): In function uninit': /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:814: undefined reference to
FT_Done_Face'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:815: undefined reference to FT_Stroker_Done' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:816: undefined reference to
FT_Done_FreeType'
/root/ffmpeg_build/lib/libavfilter.a(vf_drawtext.o): In function init': /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:738: undefined reference to
FT_Init_FreeType'
/root/ffmpeg_build/lib/libavfilter.a(vf_drawtext.o): In function load_font_file': /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:453: undefined reference to
FT_New_Face'
/root/ffmpeg_build/lib/libavfilter.a(vf_drawtext.o): In function init': /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:751: undefined reference to
FT_Stroker_New'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_drawtext.c:755: undefined reference to FT_Stroker_Set' /root/ffmpeg_build/lib/libavfilter.a(vf_fftfilt.o): In function
rdft_horizontal':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:99: undefined reference to av_rdft_init' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:109: undefined reference to
av_rdft_calc'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:111: undefined reference to av_rdft_end' /root/ffmpeg_build/lib/libavfilter.a(vf_fftfilt.o): In function
rdft_vertical':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:118: undefined reference to av_rdft_init' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:128: undefined reference to
av_rdft_calc'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:130: undefined reference to av_rdft_end' /root/ffmpeg_build/lib/libavfilter.a(vf_fftfilt.o): In function
irdft_vertical':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:136: undefined reference to av_rdft_init' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:138: undefined reference to
av_rdft_calc'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:145: undefined reference to av_rdft_end' /root/ffmpeg_build/lib/libavfilter.a(vf_fftfilt.o): In function
irdft_horizontal':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:152: undefined reference to av_rdft_init' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:154: undefined reference to
av_rdft_calc'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_fftfilt.c:163: undefined reference to av_rdft_end' /root/ffmpeg_build/lib/libavfilter.a(vf_framerate.o): In function
config_input':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_framerate.c:572: undefined reference to av_pixelutils_get_sad_fn' /root/ffmpeg_build/lib/libavfilter.a(vf_minterpolate.o): In function
config_input':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_minterpolate.c:373: undefined reference to av_pixelutils_get_sad_fn' /root/ffmpeg_build/lib/libavfilter.a(vf_mpdecimate.o): In function
init':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_mpdecimate.c:148: undefined reference to av_pixelutils_get_sad_fn' /root/ffmpeg_build/lib/libavfilter.a(vf_spp.o): In function
config_input':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_spp.c:337: undefined reference to avcodec_dct_init' /root/ffmpeg_build/lib/libavfilter.a(vf_spp.o): In function
child_class_next':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_spp.c:49: undefined reference to avcodec_dct_get_class' /root/ffmpeg_build/lib/libavfilter.a(vf_spp.o): In function
init_dict':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_spp.c:463: undefined reference to avcodec_dct_alloc' /root/ffmpeg_build/lib/libavfilter.a(vsrc_cellauto.o): In function
uninit':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vsrc_cellauto.c:213: undefined reference to av_file_unmap' /root/ffmpeg_build/lib/libavfilter.a(vsrc_cellauto.o): In function
init_pattern_from_file':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vsrc_cellauto.c:148: undefined reference to av_file_map' /root/ffmpeg_build/lib/libavfilter.a(vsrc_life.o): In function
uninit':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vsrc_life.c:274: undefined reference to av_file_unmap' /root/ffmpeg_build/lib/libavfilter.a(vsrc_life.o): In function
init_pattern_from_file':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vsrc_life.c:169: undefined reference to av_file_map' /root/ffmpeg_build/lib/libavfilter.a(af_afftfilt.o): In function
config_input':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afftfilt.c:101: undefined reference to av_fft_init' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afftfilt.c:102: undefined reference to
av_fft_init'
/root/ffmpeg_build/lib/libavfilter.a(af_afftfilt.o): In function filter_frame': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afftfilt.c:241: undefined reference to
av_fft_permute'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afftfilt.c:242: undefined reference to av_fft_calc' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afftfilt.c:261: undefined reference to
av_fft_permute'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afftfilt.c:262: undefined reference to av_fft_calc' /root/ffmpeg_build/lib/libavfilter.a(af_afftfilt.o): In function
uninit':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afftfilt.c:357: undefined reference to av_fft_end' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afftfilt.c:358: undefined reference to
av_fft_end'
/root/ffmpeg_build/lib/libavfilter.a(af_afir.o): In function fir_channel': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afir.c:74: undefined reference to
av_rdft_calc'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afir.c:93: undefined reference to av_rdft_calc' /root/ffmpeg_build/lib/libavfilter.a(af_afir.o): In function
convert_coeffs':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afir.c:204: undefined reference to av_rdft_init' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afir.c:205: undefined reference to
av_rdft_init'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afir.c:241: undefined reference to av_rdft_calc' /root/ffmpeg_build/lib/libavfilter.a(af_afir.o): In function
uninit':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afir.c:450: undefined reference to av_rdft_end' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_afir.c:457: undefined reference to
av_rdft_end'
/root/ffmpeg_build/lib/libavfilter.a(af_atempo.o): In function yae_xcorr_via_rdft': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_atempo.c:631: undefined reference to
av_rdft_calc'
/root/ffmpeg_build/lib/libavfilter.a(af_atempo.o): In function yae_flush': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_atempo.c:932: undefined reference to
av_rdft_calc'
/root/ffmpeg_build/lib/libavfilter.a(af_atempo.o): In function yae_apply': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_atempo.c:841: undefined reference to
av_rdft_calc'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_atempo.c:873: undefined reference to av_rdft_calc' /root/ffmpeg_build/lib/libavfilter.a(af_atempo.o): In function
yae_release_buffers':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_atempo.c:229: undefined reference to av_rdft_end' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_atempo.c:232: undefined reference to
av_rdft_end'
/root/ffmpeg_build/lib/libavfilter.a(af_atempo.o): In function yae_reset': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_atempo.c:286: undefined reference to
av_rdft_end'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_atempo.c:289: undefined reference to av_rdft_end' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_atempo.c:292: undefined reference to
av_rdft_init'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_atempo.c:298: undefined reference to av_rdft_init' /root/ffmpeg_build/lib/libavfilter.a(af_firequalizer.o): In function
common_uninit':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:145: undefined reference to av_rdft_end' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:146: undefined reference to
av_rdft_end'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:147: undefined reference to av_rdft_end' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:148: undefined reference to
av_rdft_end'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:149: undefined reference to av_fft_end' /root/ffmpeg_build/lib/libavfilter.a(af_firequalizer.o): In function
fast_convolute':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:212: undefined reference to av_rdft_calc' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:221: undefined reference to
av_rdft_calc'
/root/ffmpeg_build/lib/libavfilter.a(af_firequalizer.o): In function generate_kernel': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:559: undefined reference to
av_rdft_calc'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:607: undefined reference to av_rdft_calc' /root/ffmpeg_build/lib/libavfilter.a(af_firequalizer.o): In function
dump_fir':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:330: undefined reference to av_rdft_calc' /root/ffmpeg_build/lib/libavfilter.a(af_firequalizer.o): In function
fast_convolute2':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:254: undefined reference to av_fft_permute' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:255: undefined reference to
av_fft_calc'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:275: undefined reference to av_fft_permute' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:276: undefined reference to
av_fft_calc'
/root/ffmpeg_build/lib/libavfilter.a(af_firequalizer.o): In function config_input': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:667: undefined reference to
av_rdft_init'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:667: undefined reference to av_rdft_init' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:684: undefined reference to
av_rdft_init'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:688: undefined reference to av_rdft_init' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_firequalizer.c:670: undefined reference to
av_fft_init'
/root/ffmpeg_build/lib/libavfilter.a(af_headphone.o): In function headphone_fast_convolute': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:285: undefined reference to
av_fft_permute'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:286: undefined reference to av_fft_calc' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:296: undefined reference to
av_fft_permute'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:297: undefined reference to av_fft_calc' /root/ffmpeg_build/lib/libavfilter.a(af_headphone.o): In function
convert_coeffs':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:414: undefined reference to av_fft_end' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:415: undefined reference to
av_fft_end'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:416: undefined reference to av_fft_init' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:417: undefined reference to
av_fft_init'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:418: undefined reference to av_fft_end' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:419: undefined reference to
av_fft_end'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:420: undefined reference to av_fft_init' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:421: undefined reference to
av_fft_init'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:526: undefined reference to av_fft_permute' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:527: undefined reference to
av_fft_calc'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:529: undefined reference to av_fft_permute' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:530: undefined reference to
av_fft_calc'
/root/ffmpeg_build/lib/libavfilter.a(af_headphone.o): In function uninit': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:753: undefined reference to
av_fft_end'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:754: undefined reference to av_fft_end' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:755: undefined reference to
av_fft_end'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_headphone.c:756: undefined reference to av_fft_end' /root/ffmpeg_build/lib/libavfilter.a(af_superequalizer.o): In function
filter_frame':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_superequalizer.c:211: undefined reference to av_rdft_calc' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_superequalizer.c:225: undefined reference to
av_rdft_calc'
/root/ffmpeg_build/lib/libavfilter.a(af_superequalizer.o): In function make_fir': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_superequalizer.c:178: undefined reference to
av_rdft_calc'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_superequalizer.c:178: undefined reference to av_rdft_calc' /root/ffmpeg_build/lib/libavfilter.a(af_superequalizer.o): In function
uninit':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_superequalizer.c:309: undefined reference to av_rdft_end' /root/ffmpeg_build/lib/libavfilter.a(af_superequalizer.o): In function
equ_init':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_superequalizer.c:138: undefined reference to av_rdft_init' /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_superequalizer.c:139: undefined reference to
av_rdft_init'
/root/ffmpeg_build/lib/libavfilter.a(af_superequalizer.o): In function uninit': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_superequalizer.c:310: undefined reference to
av_rdft_end'
/root/ffmpeg_build/lib/libavfilter.a(af_surround.o): In function config_output': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_surround.c:177: undefined reference to
av_rdft_init'
/root/ffmpeg_build/lib/libavfilter.a(af_surround.o): In function config_input': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_surround.c:146: undefined reference to
av_rdft_init'
/root/ffmpeg_build/lib/libavfilter.a(af_surround.o): In function fft_channel': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_surround.c:1082: undefined reference to
av_rdft_calc'
/root/ffmpeg_build/lib/libavfilter.a(af_surround.o): In function ifft_channel': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_surround.c:1095: undefined reference to
av_rdft_calc'
/root/ffmpeg_build/lib/libavfilter.a(af_surround.o): In function uninit': /tmp/ffmpeg_sources/ffmpeg/libavfilter/af_surround.c:1171: undefined reference to
av_rdft_end'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/af_surround.c:1174: undefined reference to av_rdft_end' /root/ffmpeg_build/lib/libavcodec.a(libvorbisdec.o): In function
oggvorbis_decode_close':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:191: undefined reference to vorbis_block_clear' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:192: undefined reference to
vorbis_dsp_clear'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:193: undefined reference to vorbis_info_clear' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:194: undefined reference to
vorbis_comment_clear'
/root/ffmpeg_build/lib/libavcodec.a(libvorbisdec.o): In function oggvorbis_decode_frame': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:169: undefined reference to
vorbis_synthesis'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:175: undefined reference to vorbis_synthesis_pcmout' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:179: undefined reference to
vorbis_synthesis_read'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:170: undefined reference to vorbis_synthesis_blockin' /root/ffmpeg_build/lib/libavcodec.a(libvorbisdec.o): In function
oggvorbis_decode_init':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:48: undefined reference to vorbis_info_init' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:49: undefined reference to
vorbis_comment_init'
/root/ffmpeg_build/lib/libavcodec.a(libvorbisdec.o): In function oggvorbis_decode_close': /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:191: undefined reference to
vorbis_block_clear'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:192: undefined reference to vorbis_dsp_clear' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:193: undefined reference to
vorbis_info_clear'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:194: undefined reference to vorbis_comment_clear' /root/ffmpeg_build/lib/libavcodec.a(libvorbisdec.o): In function
oggvorbis_decode_init':
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:97: undefined reference to vorbis_synthesis_headerin' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:97: undefined reference to
vorbis_synthesis_headerin'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:97: undefined reference to vorbis_synthesis_headerin' /tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:109: undefined reference to
vorbis_synthesis_init'
/tmp/ffmpeg_sources/ffmpeg/libavcodec/libvorbisdec.c:110: undefined reference to vorbis_block_init' /root/ffmpeg_build/lib/libavfilter.a(vf_selectivecolor.o): In function
parse_psfile':
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_selectivecolor.c:193: undefined reference to av_file_map' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_selectivecolor.c:234: undefined reference to
av_file_unmap'
/tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_selectivecolor.c:234: undefined reference to av_file_unmap' /tmp/ffmpeg_sources/ffmpeg/libavfilter/vf_selectivecolor.c:234: undefined reference to
av_file_unmap'
collect2: ld returned 1 exit status
make[1]: [objs/nginx] Error 1
make[1]: Leaving directory `/tmp/nginx-1.10.1'
make: [build] Error 2
`
Seems to be a problem in the way you compiled your FFmpeg. Nothing related to the module or Nginx. Try to compile the FFmpeg and its dependencies using the shared
flag. Or install an FFmpeg package already built for your OS.
Normally, where is FFmpeg located on CentOs? Thanks @wandenberg
I meant, FFmpeg should be installed in what directory to easier compile with nginx?
Don't know the CentOs in deep. Common directories are /usr/[lib|include] and /usr/local/[lib|include].
But as I said before, the problem is not only the location but the way you are building the libraries.
Try to build them using the enabled-shared
option or use a package that someone did for CentOs.
@zikoops Hello, Did you solve this issue? please tell me how did you solve this. 😄
Hi @astroshim what issues are you having to build the module? Which OS are you using? If possible use a Docker or Vagrant to be easier to share and reproduce the issue.
Hello there,
I have got some errors when trying to install this module.
error: objs/src/http/modules/ngx_http_upstream_least_conn_module.o \ objs/src/http/modules/ngx_http_upstream_keepalive_module.o \ objs/src/http/modules/ngx_http_upstream_zone_module.o \ objs/addon/src/ngx_http_video_thumbextractor_module.o \ objs/ngx_modules.o \ -L /app/run/app/ffmpeg/lib -ldl -lpthread -lcrypt -lavformat -lavcodec -lavutil -lavfilter -lswscale -lswresample -lpostproc -ljpeg -lpcre -lz \ -Wl,-E /usr/bin/ld: cannot find -lpostproc collect2: error: ld returned 1 exit status make[1]: [objs/nginx] Error 1 make[1]: Leaving directory `/app/soft-package/nginx-1.14.0' make: [build] Error 2
command:
./configure --prefix=/app/run/app/nginxserver --conf-path=/app/run/app/nginxserver/conf/nginx.conf --with-cc-opt="-I /etc/ImageMagick" --add-module=/app/run/app/nginxModule/nginx-video-thumbextractor-module-master --with-cc-opt="-I /app/run/app/ffmpeg/include" --with-ld-opt="-L /app/run/app/ffmpeg/lib"
nginx config: nginx version: nginx/1.14.0 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC) configure arguments: --prefix=/app/run/app/nginxserver
ffmpeg config: ffmpeg version 3.2.4 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-36) configuration: --prefix=/app/run/app/ffmpeg --disable-ffserver --disable-ffplay --enable-shared libavutil 55. 34.101 / 55. 34.101 libavcodec 57. 64.101 / 57. 64.101 libavformat 57. 56.101 / 57. 56.101 libavdevice 57. 1.100 / 57. 1.100 libavfilter 6. 65.100 / 6. 65.100 libswscale 4. 2.100 / 4. 2.100 libswresample 2. 3.100 / 2. 3.100
Seems that you FFMpeg installation is not providing the required library postproc
.
Can you check it? I can try to help more if you inform which OS you are using. Also if possible try to do it using a Docker image, then is easier to "share" the server.
Hello there,
I have got some errors when trying to install this module.
/tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module.c In file included from /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module.c:28: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:27:34: error: libavformat/avformat.h: No such file or directory /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:28:32: error: libswscale/swscale.h: No such file or directory /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:29:34: error: libavfilter/avfilter.h: No such file or directory /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:30:36: error: libavfilter/buffersink.h: No such file or directory /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:31:35: error: libavfilter/buffersrc.h: No such file or directory /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:32:21: error: jpeglib.h: No such file or directory In file included from /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module.c:28: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:39: error: expected ‘)’ before ‘cinfo’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:41: error: expected declaration specifiers or ‘...’ before ‘AVFormatContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:41: error: expected declaration specifiers or ‘...’ before ‘AVCodecContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:42: error: expected declaration specifiers or ‘...’ before ‘AVFormatContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:42: error: expected declaration specifiers or ‘...’ before ‘AVCodecContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:42: error: expected declaration specifiers or ‘...’ before ‘AVFilterGraph’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:42: error: expected declaration specifiers or ‘...’ before ‘AVFilterContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:42: error: expected declaration specifiers or ‘...’ before ‘AVFilterContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:43: error: expected ‘)’ before ‘*’ token /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:44: error: expected declaration specifiers or ‘...’ before ‘AVFormatContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:44: error: expected declaration specifiers or ‘...’ before ‘AVCodecContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:44: error: expected declaration specifiers or ‘...’ before ‘AVFrame’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c: In function ‘ngx_http_video_thumbextractor_seek_data_from_file’: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:50: error: ‘AVSEEK_SIZE’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:50: error: (Each undeclared identifier is reported only once /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:50: error: for each function it appears in.) cc1: warnings being treated as errors /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c: In function ‘ngx_http_video_thumbextractor_read_data_from_file’: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:69: error: implicit declaration of function ‘AVERROR’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c: In function ‘ngx_http_video_thumbextractor_get_thumb’: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:83: error: ‘AVFormatContext’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:83: error: ‘pFormatCtx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:84: error: ‘AVCodecContext’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:84: error: ‘pCodecCtx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:85: error: ‘AVCodec’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:85: error: ‘pCodec’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:86: error: ‘AVFrame’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:86: error: ‘pFrame’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:89: error: ‘AVIOContext’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:89: error: ‘pAVIOCtx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:92: error: ‘AVFilterContext’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:92: error: ‘buffersink_ctx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:93: error: ‘buffersrc_ctx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:94: error: ‘AVFilterGraph’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:94: error: ‘filter_graph’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:121: error: implicit declaration of function ‘avformat_alloc_context’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:122: error: implicit declaration of function ‘av_malloc’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:122: error: cast to pointer from integer of different size /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:128: error: implicit declaration of function ‘avio_alloc_context’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:137: error: implicit declaration of function ‘avformat_open_input’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:144: error: implicit declaration of function ‘avformat_find_stream_info’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:149: error: ‘float_t’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:149: error: expected ‘)’ before ‘pFormatCtx’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:156: error: implicit declaration of function ‘av_find_best_stream’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:156: error: ‘AVMEDIA_TYPE_VIDEO’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:163: error: implicit declaration of function ‘avcodec_alloc_context3’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:164: error: implicit declaration of function ‘avcodec_parameters_to_context’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:166: error: ‘AVDictionary’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:166: error: ‘dict’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:168: error: implicit declaration of function ‘av_dict_set’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:171: error: implicit declaration of function ‘avcodec_open2’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:176: error: too many arguments to function ‘setup_parameters’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:178: error: too many arguments to function ‘setup_filters’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:183: error: implicit declaration of function ‘av_frame_alloc’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:190: error: too many arguments to function ‘get_frame’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:191: error: ‘AV_PICTURE_TYPE_NONE’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:196: error: implicit declaration of function ‘filter_frame’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:233: error: implicit declaration of function ‘av_frame_free’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:237: error: implicit declaration of function ‘avcodec_close’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:238: error: implicit declaration of function ‘avcodec_free_context’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:242: error: implicit declaration of function ‘avformat_close_input’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:246: error: implicit declaration of function ‘av_freep’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:250: error: implicit declaration of function ‘avfilter_graph_free’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c: In function ‘ngx_http_video_thumbextractor_init_libraries’: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:260: error: implicit declaration of function ‘av_register_all’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:261: error: implicit declaration of function ‘avfilter_register_all’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:262: error: implicit declaration of function ‘av_log_set_level’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:262: error: ‘AV_LOG_ERROR’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c: In function ‘ngx_http_video_thumbextractor_jpeg_compress’: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:269: error: storage size of ‘cinfo’ isn’t known /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:270: error: storage size of ‘jerr’ isn’t known /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:271: error: ‘JSAMPROW’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:271: error: expected ‘;’ before ‘row_pointer’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:275: error: implicit declaration of function ‘jpeg_std_error’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:276: error: implicit declaration of function ‘jpeg_create_compress’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:277: error: implicit declaration of function ‘ngx_http_video_thumbextractor_jpeg_memory_dest’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:282: error: ‘JCS_RGB’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:284: error: implicit declaration of function ‘jpeg_set_defaults’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:294: error: implicit declaration of function ‘jpeg_set_quality’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:299: error: implicit declaration of function ‘jpeg_simple_progression’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:302: error: implicit declaration of function ‘jpeg_start_compress’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:305: error: ‘row_pointer’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:306: error: implicit declaration of function ‘jpeg_write_scanlines’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:309: error: implicit declaration of function ‘jpeg_finish_compress’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:310: error: implicit declaration of function ‘jpeg_destroy_compress’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:270: error: unused variable ‘jerr’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:269: error: unused variable ‘cinfo’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c: At top level: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:317: error: field ‘pub’ has incomplete type /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:326: error: expected ‘)’ before ‘cinfo’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:337: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘ngx_http_video_thumbextractor_empty_output_buffer’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:355: error: expected ‘)’ before ‘cinfo’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:363: error: expected ‘)’ before ‘cinfo’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:382: error: expected ‘)’ before ‘*’ token /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:389: error: expected ‘)’ before ‘*’ token /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:395: error: expected declaration specifiers or ‘...’ before ‘AVFormatContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:395: error: expected declaration specifiers or ‘...’ before ‘AVCodecContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c: In function ‘setup_parameters’: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:397: error: ‘pFormatCtx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:397: error: ‘AV_TIME_BASE’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c: At top level: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:422: error: expected declaration specifiers or ‘...’ before ‘AVFormatContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:422: error: expected declaration specifiers or ‘...’ before ‘AVCodecContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:422: error: expected declaration specifiers or ‘...’ before ‘AVFilterGraph’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:422: error: expected declaration specifiers or ‘...’ before ‘AVFilterContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:422: error: expected declaration specifiers or ‘...’ before ‘AVFilterContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c: In function ‘setup_filters’: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:424: error: ‘AVFilterGraph’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:424: error: ‘filter_graph’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:426: error: ‘AVFilterContext’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:426: error: ‘transpose_ctx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:427: error: ‘transpose_cw_ctx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:428: error: ‘scale_ctx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:429: error: ‘crop_ctx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:430: error: ‘tile_ctx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:431: error: ‘format_ctx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:443: error: ‘AVDictionaryEntry’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:443: error: ‘rotate’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:443: error: implicit declaration of function ‘av_dict_get’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:443: error: ‘pFormatCtx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:450: error: implicit declaration of function ‘display_aspect_ratio’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:450: error: ‘pCodecCtx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:451: error: implicit declaration of function ‘display_width’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:491: error: ‘fg’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:491: error: implicit declaration of function ‘avfilter_graph_alloc’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:496: error: ‘AVRational’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:496: error: expected ‘;’ before ‘time_base’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:500: error: ‘time_base’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:503: error: implicit declaration of function ‘avfilter_graph_create_filter’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:503: error: ‘buffersrc_ctx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:503: error: implicit declaration of function ‘avfilter_get_by_name’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:547: error: ‘buffersink_ctx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:554: error: implicit declaration of function ‘avfilter_link’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:580: error: implicit declaration of function ‘avfilter_graph_config’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c: At top level: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:589: error: expected ‘)’ before ‘*’ token /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:608: error: expected declaration specifiers or ‘...’ before ‘AVFormatContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:608: error: expected declaration specifiers or ‘...’ before ‘AVCodecContext’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:608: error: expected declaration specifiers or ‘...’ before ‘AVFrame’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c: In function ‘get_frame’: /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:610: error: ‘AVPacket’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:610: error: expected ‘;’ before ‘packet’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:615: error: ‘pFormatCtx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:617: error: ‘float_t’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:617: error: expected ‘)’ before ‘pFormatCtx’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:621: error: implicit declaration of function ‘av_seek_frame’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:621: error: ‘AVSEEK_FLAG_BACKWARD’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:628: error: implicit declaration of function ‘av_read_frame’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:628: error: ‘packet’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:632: error: implicit declaration of function ‘avcodec_send_packet’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:632: error: ‘pCodecCtx’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:633: error: implicit declaration of function ‘avcodec_receive_frame’ /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:633: error: ‘pFrame’ undeclared (first use in this function) /tmp/nginx-video-thumbextractor-module/src/ngx_http_video_thumbextractor_module_utils.c:645: error: implicit declaration of function ‘av_packet_unref’ make[1]: *** [objs/addon/src/ngx_http_video_thumbextractor_module.o] Error 1 make[1]: Leaving directory
/tmp/nginx-1.10.1' make: *** [build] Error 2 `I have installed FFMPEG & libjpeg already. Here is result when I run ffmpeg -version
` ffmpeg version N-86909-g4158fba Copyright (c) 2000-2017 the FFmpeg developers built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-18) configuration: --prefix=/root/ffmpeg_build --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags='-L/root/ffmpeg_build/lib -ldl' --bindir=/root/bin --pkg-config-flags=--static --enable-gpl --enable-libfdk_aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree libavutil 55. 69.100 / 55. 69.100 libavcodec 57.102.100 / 57.102.100 libavformat 57. 76.100 / 57. 76.100 libavdevice 57. 7.100 / 57. 7.100 libavfilter 6. 95.100 / 6. 95.100 libswscale 4. 7.101 / 4. 7.101 libswresample 2. 8.100 / 2. 8.100 libpostproc 54. 6.100 / 54. 6.100
`