2

主要问题

尝试重复此错误的步骤。

  • 下载最新的 git (git://git.videolan.org/x264.git)。
  • 运行./configure- 您可以使用任何选项,所有选项都存在错误。
  • 运行sudo make- 它将编译所有代码,但是当需要链接代码时,它会遇到错误

    /usr/local/lib/libavcodec.a(libx264.o):在函数“X264_init”中: /.../libx264.c:
    418:未定义对“x264_encoder_open_128”的引用

然后这将退出并退出make。我已经删除了所有与 x264 相关的 apt 包。我已经在我的计算机上搜索了任何可能相关的库并删除了它们。这个问题仍然存在。有人可以解释发生了什么问题以及解决此问题的最简单方法吗?

附加信息

构建avconv时也会出现此错误。它在链接时也会失败,并出现相同的错误。所以我可以假设该目录或源没有问题。

4

1 回答 1

3

那是与依赖于旧版本 libx264 的 libavcodec.a 链接的错误。如果您只需要 libx264,则可以在没有 lavf 支持的情况下编译它(./configure --disable-lavf)。如果您需要支持 lavf 的 x264,则需要重新编译没有 libx264 的 libavcodec.a。即你需要打破libavcodec 和libx264 之间的循环依赖。

于 2013-01-17T07:14:03.290 回答