在C99中编译ffmpeg示例获取错误信息
我可以使用ffmpeg构建环境运行“生成示例”来获取.o文件。 但是我不能用C99编译。我使用的操作系统是Ubuntu14.04,我配置了ffmpeg,安装时没有错误 以下是详细信息(demuxing_decoding demuxing_decoding.c位于ffmpeg_souce_文件夹/doc/examples中):在C99中编译ffmpeg示例获取错误信息,c,ffmpeg,C,Ffmpeg,我可以使用ffmpeg构建环境运行“生成示例”来获取.o文件。 但是我不能用C99编译。我使用的操作系统是Ubuntu14.04,我配置了ffmpeg,安装时没有错误 以下是详细信息(demuxing_decoding demuxing_decoding.c位于ffmpeg_souce_文件夹/doc/examples中): 我不知道哪里错了…我被困了两天…需要你的帮助。非常感谢 我终于解决了我的问题。在重建ffmpeg之前,我使用apt get安装ffmpeg。仅使用sudo-apt-get-
我不知道哪里错了…我被困了两天…需要你的帮助。非常感谢 我终于解决了我的问题。在重建ffmpeg之前,我使用
apt get
安装ffmpeg。仅使用sudo-apt-get-remove-ffmpeg
删除它是不够的,另外运行此命令sudo-apt-get-remove-libavutil-dev-libavutil-extra-51
。之后,重建ffmpeg。一切都很好~我终于解决了我的问题。在重建ffmpeg之前,我使用apt get
安装ffmpeg。仅使用sudo-apt-get-remove-ffmpeg
删除它是不够的,另外运行此命令sudo-apt-get-remove-libavutil-dev-libavutil-extra-51
。之后,重建ffmpeg。一切都很好~
c99 -o demuxing_decoding demuxing_decoding.c -lavdevice -lavformat -lavcodec -lavfilter
-lavutil -lswresample -lswscale -lz -lbz2
demuxing_decoding.c: In function ‘main’:
demuxing_decoding.c:326:9: warning: ‘avcodec_alloc_frame’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:3927) [-Wdeprecated-declarations]
frame = avcodec_alloc_frame();
^
demuxing_decoding.c:406:9: warning: ‘avcodec_free_frame’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:3952) [-Wdeprecated-declarations]
avcodec_free_frame(&frame);
^
/tmp/ccgEq0Zc.o: In function `decode_packet':
demuxing_decoding.c:(.text+0x561): undefined reference to `av_frame_unref'
/tmp/ccgEq0Zc.o: In function `open_codec_context':
demuxing_decoding.c:(.text+0x5f4): undefined reference to `av_get_media_type_string'
demuxing_decoding.c:(.text+0x66c): undefined reference to `av_get_media_type_string'
demuxing_decoding.c:(.text+0x6df): undefined reference to `av_get_media_type_string'
/tmp/ccgEq0Zc.o: In function `main':
demuxing_decoding.c:(.text+0xcc1): undefined reference to `av_frame_alloc'
demuxing_decoding.c:(.text+0x1082): undefined reference to `av_frame_free'
collect2: error: ld returned 1 exit status