c++ - 编译 x264 的这个 "fixing the build scripts"是什么?

标签 c++ git ffmpeg configure libx264

我正在尝试使用来自 VideoLAN 的其他编解码器(例如它们的 x264 编解码器)编译源自定义 ffmpeg 库的所有静态构建。我最终是为在 Windows 中使用 Visual Studio 2015 C++ 而构建的,因此我正在比较一些编译指南以获取我的说明。

在下面链接的指南中(我通过 Google 搜索找到)显示了如何在 MSYS2 中使用 VS2015 工具链编译 x264,而无需任何特殊步骤:
https://gist.github.com/RangelReale/3e6392289d8ba1a52b6e70cdd7e10282

在 ffmpeg 网站的编译指南页面提供的其他指南中,它包含了用于 x264 的“修复构建脚本”的步骤:
https://www.roxlu.com/2019/062/compiling-ffmpeg-with-x264-on-windows-10-using-msvc

问题是,当我“修复构建脚本”时,配置脚本不再找到 C 编译器。使用第一个指南进行构建似乎可行,但它也是近 2 年前编写的,所以也许 ffmpeg 指南正在做一些重要的修复?我不知道。

我是:

  • 运行“VS2015 x64 Native Tools 命令提示符”
  • 通过“msys2_shell.cmd -mingw64 -use-full-path”
  • 启动一个 pacman 加载的 msys2 shell
  • git克隆http://git.videolan.org/git/x264.git

  • 在这一点上,两个编译指南有所不同,第一个指南只是 cd 到 x264 并运行配置,而另一个指南对 config.guess 文件进行一些 curl 下载,然后对 ./configure 进行一些 sed 操作。考虑到这些指令得到了 ffmpeg 站点的“认可”,我想知道这是在做什么,以及这些“特殊”步骤导致我的 x264 配置失败有多重要。

    最佳答案

    只需要使用“config.guess”和“configure”进行所有这些操作,因为稍后它们会运行简单的“msys2_shell.cmd”,即在 MSYS 模式下。 x264 中正确/支持的方式是像您一样使用“-mingw32”和“-mingw64”选项在 MINGW32 或 MINGW64 模式下运行 shell(或运行 mingw32.exe/mingw64.exe 而不是 msys2_shell.cmd)。此更改导致“uname”命令的不同输出,这对于 x264 的配置很重要。

    关于c++ - 编译 x264 的这个 "fixing the build scripts"是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62074730/

    相关文章:

    Git 从一个分支分支以及随后的 merge

    ffmpeg - HEVC 使用 ffmpeg 变换量化系数

    ffmpeg - 使用 ffmpeg mask 动态 Logo

    php - 在 php 中通过 ffmpeg 命令将 avi 文件转换为 mp4 文件

    c++ - std::list 的循环迭代

    c++ - 通过大参数自动使用 const-ref

    Git: checkout 如何影响存储库?

    c++ - 异常处理相关

    c++ - 为什么 _ftscanf_s 会抛出异常而 _ftscanf 不会?

    git - 在 git merge 冲突中,如何保留正在 merge 的版本?