在windows下编译FFmpeg需搭建编译环境,首先第一个需要搭建MSY32,正逢在学习的路上缓慢前进(刚安装好msys2),也将安装步骤已经在安装过程中我遇到的一些问题进行一个汇总以便大家参考,同时也为自己日后的复盘记录好。

一:编译环境

1. 下载安装MSYS2(按照官⽹安装到⾃⼰指定的⽬录下,本⼈安装于F:/msys64)

下载地址:https://www.msys2.org/

2. 安装完成之后,先把安装⽬录下的msys2_shell.cmd中
rem set MSYS2_PATH_TYPE=inherit
//修改为以下
set MSYS2_PATH_TYPE=inherit

这是为了将vs的环境继承给MSYS2。(因为开发需要安装的vs2015)

二:修改pacman的源

1:修改pacman的源

        pacman是⼀个软件包管理器,⽤来在MSYS2中安装软件,但是默认的国外的源下载安装包时⾮常缓慢, ⼤概只有⼗⼏⼆⼗KB的速度,⽽且还容易下载中断出错,所以需要修改为国内源,国内源可以选择中科⼤ 的源。
        按照MSYS2镜像提示修改。具体如下:

         编辑 /etc/pacman.d/mirrorlist.mingw32 ,在⽂件开头添加:

Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686/
Server = http://mirrors.ustc.edu.cn/msys2/mingw/i686/

        编辑 /etc/pacman.d/mirrorlist.mingw64 ,在⽂件开头添加:

Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/x86_64/
Server = http://mirrors.ustc.edu.cn/msys2/mingw/x86_64/
        编辑 /etc/pacman.d/mirrorlist.msys ,在⽂件开头添加:
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch/
Server = http://mirrors.ustc.edu.cn/msys2/msys/$arch/

        注意:是在⽂件夹打开⽂件对文本进⾏编辑,不是在shell窗⼝编辑。

2:启动命令行窗口

        cmd进入命令行对msys测试:

//进入msys安装的目录,我这里安装在F盘
F:
cd msys64
//如果要打开msys2的mingw64窗⼝ 
msys2_shell.cmd -mingw64
#如果要打开msys2的msys窗⼝
#msys2_shell.cmd

 3:更新软件数据库

        在我们上步打开的MINGW64中输入:

pacman -Sy

        在这里可能会碰到一些问题如:

        “无效或已损坏的软件包 (PGP 签名)”;在这里先不做讨论, 后面部分是大致一样的问题可以统一解决,因为这里我找不到原始的问题(错误)的一个截图;

三:安装编译环境

1:安装mingw-w64

pacman -S mingw-w64-x86_64-toolchain

默认全部安装即可。

2:安装git

pacman -S git

3:安装make等工具

pacman -S make
pacman -S automake
pacman -S autoconf
pacman -S perl
pacman -S libtool
pacman -S mingw-w64-i686-cmake
pacman -S pkg-config
//如果需要编译出ffplayer的话,还需要安装SDL
pacman -S mingw-w64-x86_64-SDL2

        这是正确安装后的结果: 

         安装过程中可能遇到的问题:

        解决方式:

        打开F:\msys64\usr\bin\pacman-conf:

         在当中将所有SigLevel = xxxx的全部改为SigLevel = Never;

        可以将该文件备份,等待安装完毕后在将修改的文件替换成备份文件。

更多推荐