在Mac OS X上编译x264出错

4

我正在尝试编译和安装x264 H.264 / AVC编码器。 我已经安装了gcc。但是当我运行以下命令时,我会收到“找不到可用的C编译器”错误:

./configure --enable-shared --enable-static

What can I do?

The config log said:

/bin/gcc conftest.c  -Wall -I. -I$(SRCPATH) -falign-loops=16 -mdynamic-no-pic -o conftest
clang: error: unknown argument: '-falign-loops=16' [-Wunused-command-line-argument-hard-error-in-future]
clang: note: this will be a hard error (cannot be downgraded to a warning) in the future

你尝试在命令行中使用 gcc 命令来检查你的 gcc 是否可用,例如是否在你的路径中了吗? - Søren Debois
是的,它可用。它在 /usr/bin/gcc 中。 - imdadable
config.log显示:检查-mdynamic-no-pic...否 2 失败的命令行是: 3 -------------------------------------------------- 4 /usr/bin/gcc conftest.c -Qunused-arguments -Wall -I. -I$(SRCPATH) -falign-loops=16 -mdynamic-no-pic -o conftest 5 clang: 错误: 未知参数: '-falign-loops=16' [-Wunused-command-line-argument-hard-error-in-future] 6 clang: 注意: 这将在未来成为一个硬错误(不能降级为警告) - imdadable
运行:/usr/bin/gcc --version;很有可能是伪装成clang。我得到的是:Apple LLVM version 5.1 (clang-503.0.38) (based on LLVM 3.4svn)。我倾向于使用GCC 4.8.2,但那是我自己构建的。 - Jonathan Leffler
是的,那就是我所拥有的确切版本,Apple LLVM version 5.1 (clang-503.0.38)(基于LLVM 3.4svn)。非常感谢Jonathan Leffler,我会按照您提供的链接构建GNU GCC。 - imdadable
2个回答

3
我遇到了相同的错误并在这里找到了一个简单的解决方案: http://www.xin.at/x264/x264-guide-macosx-en.htm 在实际开始构建之前,我们需要从配置脚本中删除一个GCC编译器标志,因为新版的LLVM+CLANG编译器将无法处理它。为此,请在您喜欢的文本编辑器中打开configure文件并查找以下位置:
darwin*) SYS="MACOSX" CFLAGS="$CFLAGS -falign-loops=16"
将其替换为以下内容,有效地删除-falign-loops=16选项:
darwin*) SYS="MACOSX" CFLAGS="$CFLAGS"
完成上述操作后,libx264将可以成功构建 :)

0

configure 脚本试图设置编译器选项 -falign-loops=16,但 clang 编译器(伪装成 gcc)拒绝接受。

您可以获得(编译)自己的 GCC 并使用它(我已经执行了 编译和安装;虽然不是很困难,但也不是琐碎的事情),或者找出如何停止 configure 脚本失败,因为它假设所有版本的 GCC 都必须支持 -falign-loops=16 选项。这是 configure 脚本应该检查的类型,以使您不会遇到此类故障。归根结底,这是此代码的配置中的错误。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接