linux下编译ffmpeg时关于configure的问题.

ubuntu在编译ffmpeg包的时候需要用到之前编译的x264,错误提示libx264notfound.查看了config.log,后面出现了一堆:ratecontro... ubuntu在编译ffmpeg包的时候需要用到之前编译的x264,
错误提示 libx264 not found.

查看了config.log,后面出现了一堆:
ratecontrol.c:(.text+0x7a33): undefined reference to `__pow_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_ratecontrol_slice_type':
ratecontrol.c:(.text+0x85ca): undefined reference to `__log2_finite'
ratecontrol.c:(.text+0x8633): undefined reference to `__log2_finite'
ratecontrol.c:(.text+0x878c): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x87e1): undefined reference to `__pow_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_ratecontrol_end':
ratecontrol.c:(.text+0x8c1f): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x8c68): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x8d5e): undefined reference to `__pow_finite'
/usr/local/lib/libx264.a(ratecontrol.o):ratecontrol.c:(.text+0x8f56): more undefined references to `__pow_finite' follow
/usr/local/lib/libx264.a(ratecontrol.o): In function `clip_qscale':
ratecontrol.c:(.text+0x718): undefined reference to `__exp_finite'
/usr/local/lib/libx264.a(set.o): In function `x264_sps_init':
set.c:(.text+0x8de): undefined reference to `__log2f_finite'
collect2: ld returned 1 exit status
ERROR: libx264 not found

似乎是math链接不到。 但是调用math的本身是libx264.a, 并不是ffmpeg。
这个问题怎么解决啊?

谢谢
展开
 我来答
kerving
2013-08-02 · TA获得超过985个赞
知道小有建树答主
回答量:417
采纳率:0%
帮助的人:366万
展开全部

你准备工作没做好吧!!

  1. 先编译安装 Yasm。

  2. 然后编译安装 H.264 (也就是x264)。

  3. 再编译安装 AAC audio encoder (fdk-aac)。

  4. 编译安装 libmp3lame (MP3 audio encoder)。

  5. 编译安装 libopus (Opus audio decoder and encoder)。

  6. 编译安装 libvpx (VP8/VP9 video encoder and decoder)。

  7. 做后编译安装 ffmpeg。

    其中1-6你可以选择编译安装,也可以使用源直接安装。安装后了再编译安装ffmpeg

    你使用 sudo ldconfig -p |grep libx264 看看你的libx264是否正确安装.

    你编译安装x264的时候可以使用2中方式都安装。

       cd ../x264

      ./configure --enable-shared
      make
      make install

       最后

      cd ../x264
      make distclean
     ./configure --enable-static
     make
     make install

jiangtao9999
推荐于2020-01-26 · TA获得超过1.2万个赞
知道大有可为答主
回答量:1.2万
采纳率:44%
帮助的人:8189万
展开全部
看到个类似的问题:
www.avidemux.org/smf/index.php?topic=11974.0

你这个东西真不好说,不过看来是 x264 因为是静态编译,静态编译我记得需要别的函数库也是静态的。你这个应该是 x264 本身就有找不到的函数入口问题,导致现在传染给了 ffmpeg 。
你看看 config.log 这堆错误前面的编译命令和编译对应的文件,应该是可以通过增加 lib 目录解决。但也不排除可能你还需要别的程序的静态库。

话说 __pow_finite 应该是 glibc 的函数库提供的吧?按说 glibc 应该肯定在 GCC 调用的 lib 目录里面啊。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-08-02
展开全部
-L 添加引用

或者,
放到系统默认的lib路径
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
网络IT1314
2021-03-04 · 你需要,我专业,共同进步
网络IT1314
采纳数:4 获赞数:3

向TA提问 私信TA
展开全部

2 configure the instrument

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式