我正在尝试编译最新版本的ffmpeg(在CentOS 5.3中)。我首先下载了最新版本的libx264,并使用--enable-static
对其进行了编译,并将其安装在/usr/local/
中。但是,当我编译ffmpeg时,我收到此错误消息:
libavcodec/libavcodec.a(libx264.o): In function `X264_init':
/usr/local/src/ffmpeg/libavcodec/libx264.c:494: undefined reference to `x264_encoder_open_125'
collect2: ld returned 1 exit status
make: *** [ffmpeg_g] Error 1
在网上搜索,我看到如果ffmpeg拿起旧版本的libx264,我确实有(在/usr/lib
中)并且无法卸载,因为其他软件依赖它。那么问题是:如何强制ffmpeg链接到我想要的libx264?我最后一次这样做(不可否认一年前)我也有2个版本的libx264,我不记得要做任何特别的事情了。是否有我忘记的配置开关?
答案 0 :(得分:1)
使用和android-ffmpeg git项目作为example与静态x264库,并像'blahdblah'已经说过......我认为你只需要在CC和LINK阶段正确设置你的lib路径。请注意链接底部的'cflags'和'ldflags'开关。
我并不是要通过引入一个Android示例来使问题复杂化,但是查看这个'config_ffmpeg'实例可能会有所帮助。
答案 1 :(得分:0)
你只是想解码h264,我们有一个基于ffmpeg .8的框架,它似乎比最新的
更稳定www.github.com/mooncatventures-group