CentOS7源码编译FFmpeg的坑

目录

前言

由于不能访问第三方源,因此没办法yum安装FFmpeg,只能选择按照官方文档源码编译。
CompilationGuide/Centos – FFmpeg
该文主要记录遇到的问题,细节步骤请按官方文档操作。

编译FFmpeg报错

ERROR: freetype2 not found using pkg-config
报上述错误,搜到了不少同样错误的帖子,但都好像不是我这个问题,浪费很多时间。
进一步排查显示:freetype-devel已经安装了,通过locate freetype |grep pc也能够查询到/usr/lib64/pkgconfig/freetype2.pc
然后我将pc文件的路径显式加入到PKG_CONFIG_PATH中,保证能在terminal通过pkg-config freetype2 --libs查询到freetype2,仍然没有解决。
第二天早上猛然发现官方教程中存在一个:
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
PKG_CONFIG_PATH被重新赋值,屏蔽了我的添加,遂将其改为:
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig:$PKG_CONFIG_PATH" ./configure \
问题解决,如果你碰到类似问题,希望上述信息能给你提供一些帮助。

编译x265报错

# CMakeFiles/CMakeError.log
Checking whether the ASM_NASM compiler is GNU using "--version" did not match "(GNU assembler)|(GCC)|(Free Software Foundation)":
NASM version 2.14.02 compiled on Jul 17 2019
Checking whether the ASM_NASM compiler is HP using "-V" did not match "HP C":
nasm: error: unrecognised option `-V'
type `nasm -h' for help
Checking whether the ASM_NASM compiler is Intel using "--version" did not match "(ICC)":
NASM version 2.14.02 compiled on Jul 17 2019
Checking whether the ASM_NASM compiler is SunPro using "-V" did not match "Sun C":
nasm: error: unrecognised option `-V'
type `nasm -h' for help
Checking whether the ASM_NASM compiler is XL using "-qversion" did not match "XL C":
nasm: error: unrecognised option `-q'
type `nasm -h' for help
Checking whether the ASM_NASM compiler is MSVC using "/?" did not match "Microsoft":
/?: warning: default output file same as input, using `nasm.out' for output
 [-w+other]
nasm: fatal: unable to open input file `/?'
Checking whether the ASM_NASM compiler is TI using "-h" did not match "Texas Instruments":
usage: nasm [-@ response file] [-o outfile] [-f format] [-l listfile]
            [options...] [--] filename
    or nasm -v (or --v) for version info

没找到具体原因和解决办法,就没有--enable-libx265,有知道原因的可以留言告诉我,谢谢!

上一篇:NASM 32位:printf打印寄存器内容


下一篇:linux – 如何使用汇编语言中的errno打印错误消息