欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

win10 64位 vs2013 编译ffmpeg-3.4.1

程序员文章站 2022-07-09 15:28:33
...

1、安装msys

MinGW : http://www.mingw.org/ ,运行下载的MinGW安装管理器,包含msys。假设安装好后MinGW路径为:d:/MinGW ,则msys路径应为:d:/MinGW/msys 。将:d:/MinGW/bin和d:/MinGW/msys/1.0/bin加到系统path环境变量中;

安装MinGW,安装的时候一定要选中msys,否则要另外下载安装msys,如果不知道该安装哪些选项,可选中Basic Setup中所有右边选项进行安装,如下图1所示,然后选择Installation->update catalogue->review changes->apply,等待安装

win10 64位 vs2013 编译ffmpeg-3.4.1

2,yasm : http://yasm.tortall.net/ , 改名叫yasm.exe,复制到:d:/MinGW/msys/1.0/bin 目录下;

win10 64位 vs2013 编译ffmpeg-3.4.1

3、修改bat文件

win10 64位 vs2013 编译ffmpeg-3.4.1

call "D:\Pro\VS2013\VC\bin\vcvars32.bat"
@echo off
rem Copyright (C):  2001, 2002, 2003, 2004, 2005  Earnie Boyd
rem   mailto:aaa@qq.com
rem This file is part of Minimal SYStem
rem   http://www.mingw.org/msys.shtml
rem
rem File:	    msys.bat
rem Revision:	    2.4
rem Revision Date:  December 8th, 2005

rem ember to set the "Start in:" field of the shortcut.
rem A value similar to C:\msys\1.0\bin is what the "Start in:" field needs
rem to represent.

rem ember value of GOTO: is used to know recursion has happened.
if "%1" == "GOTO:" goto %2

if NOT "x%WD%" == "x" set WD=

rem ember command.com only uses the first eight characters of the label.
goto _WindowsNT

rem ember that we only execute here if we are in command.com.
:_Windows

if "x%COMSPEC%" == "x" set COMSPEC=command.com
start /min %COMSPEC% /e:4096 /c %0 GOTO: _Resume %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
goto EOF

rem ember that we execute here if we recursed.
:_Resume
for %%F in (1 2 3) do shift
if NOT EXIST %WD%msys-1.0.dll set WD=.\bin\

rem ember that we get here even in command.com.
:_WindowsNT

rem Hopefully a temporary workaround for getting MSYS shell to run on x64
rem (WoW64 cmd prompt sets PROCESSOR_ARCHITECTURE to x86)
if not "x%PROCESSOR_ARCHITECTURE%" == "xAMD64" goto _NotX64
set COMSPEC=%WINDIR%\SysWOW64\cmd.exe
%COMSPEC% /c %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
goto EOF
:_NotX64

if NOT EXIST %WD%msys-1.0.dll set WD=%~dp0\bin\

rem ember Set up option to use rxvt based on value of %1
set MSYSCON=unknown
if "x%1" == "x-norxvt" set MSYSCON=sh.exe
if "x%1" == "x--norxvt" set MSYSCON=sh.exe
if "x%1" == "x-rxvt" set MSYSCON=rxvt.exe
if "x%1" == "x--rxvt" set MSYSCON=rxvt.exe
if "x%1" == "x-mintty" set MSYSCON=mintty.exe
if "x%1" == "x--mintty" set MSYSCON=mintty.exe
if NOT "x%MSYSCON%" == "xunknown" shift

if "x%MSYSCON%" == "xunknown" set MSYSCON=sh.exe

if "x%MSYSTEM%" == "x" set MSYSTEM=MINGW32
if "%1" == "MINGW32" set MSYSTEM=MINGW32
if "%1" == "MSYS" set MSYSTEM=MSYS

if NOT "x%DISPLAY%" == "x" set DISPLAY=

if "x%MSYSCON%" == "xmintty.exe" goto startmintty
if "x%MSYSCON%" == "xrxvt.exe" goto startrxvt
if "x%MSYSCON%" == "xsh.exe" goto startsh

:unknowncon
echo %MSYSCON% is an unknown option for msys.bat.
pause
exit 1

:notfound
echo Cannot find the rxvt.exe or sh.exe binary -- aborting.
pause
exit 1

:startmintty
if NOT EXIST %WD%mintty.exe goto startsh
start %WD%mintty /bin/bash -l
exit

:startrxvt
if NOT EXIST %WD%rxvt.exe goto startsh

rem Setup the default colors for rxvt.
if "x%MSYSBGCOLOR%" == "x" set MSYSBGCOLOR=White
if "x%MSYSFGCOLOR%" == "x" set MSYSFGCOLOR=Black
if "x%MINGW32BGCOLOR%" == "x" set MINGW32BGCOLOR=LightYellow
if "x%MINGW32FGCOLOR%" == "x" set MINGW32FGCOLOR=Navy
if "%MSYSTEM%" == "MSYS" set BGCOLOR=%MSYSBGCOLOR%
if "%MSYSTEM%" == "MSYS" set FGCOLOR=%MSYSFGCOLOR%
if "%MSYSTEM%" == "MINGW32" set BGCOLOR=%MINGW32BGCOLOR%
if "%MSYSTEM%" == "MINGW32" set FGCOLOR=%MINGW32FGCOLOR%

start %WD%rxvt -backspacekey  -sl 2500 -fg %FGCOLOR% -bg %BGCOLOR% -sr -fn Courier-12 -tn msys -geometry 80x25 -e /bin/sh --login -i
exit

:startsh
if NOT EXIST %WD%sh.exe goto notfound
start %WD%sh --login -i
exit

:EOF

rem ChangeLog:
rem 2002.03.07  Earnie Boyd  mailto:aaa@qq.com
rem	* Move the @echo off to the top.
rem	* Change the binmode setting to nobinmode.
rem     * Remove the angle brackets around email address to workaround MS 
rem	buggy command processor.
rem
rem 2002.03.12  Earnie Boyd  mailto:aaa@qq.com
rem	* Add filter logic to find rxvt.exe
rem
rem 2002.03.13  Earnie Boyd  mailto:aaa@qq.com
rem	* Revert the nobinmode change.
rem
rem 2002.03.20  Earnie Boyd  mailto:aaa@qq.com
rem     * Add logic for stating bash.
rem
rem 2002.04.11  Earnie Boyd  mailto;aaa@qq.com
rem	* Add logic for setting MSYSTEM value based on parameter.
rem
rem 2002.04.15  Olivier Gautherot  mailto:aaa@qq.com
rem	* Reduce number test conditions for finding an executable.
rem
rem 2002.04.15  Earnie Boyd  mailto:aaa@qq.com
rem	* Unset DISPLAY if set before starting shell.
rem
rem 2002.04.16  Earnie Boyd  mailto:aaa@qq.com
rem	* Remove use of DEFINED in conditional statments for variables for
rem	command.com support.
rem	* Add check for nonexistance of USERNAME variable for Win9x support.
rem
rem 2002.04.17  Earnie Boyd  mailto:aaa@qq.com
rem	* Add foreground and background color defaults based on MSYSTEM value.
rem
rem 2002.04.22  Earnie Boyd  mailto:aaa@qq.com
rem	* More Win 9x changes.
rem
rem 2002.05.04  Earnie Boyd  mailto:aaa@qq.com
rem	* Remove the SET of USERNAME and HOME.
rem
rem 2002.11.18  Earnie Boyd  mailto:aaa@qq.com
rem	* Add command.com detection and restart with a larger environment to
rem	avoid errors on w9x.
rem     Many thanks to Randy W. Sims mailto:aaa@qq.com
rem	See Randy's response to "RE: [Mingw-msys] Installation on WindowsME" 
rem	from 11/06/2002 in the archives of aaa@qq.com
rem
rem 2002.11.19  Paul Garceau  mailto:aaa@qq.com
rem	* Fix a typo: Change COMPSPEC to COMSPEC.
rem
rem 2002.11.25  Earnie Boyd  mailto:aaa@qq.com
rem	* Remove the SET CYGWIN since it doesn't matter any longer.
rem
rem 2003.02.03  Earnie Boyd  mailto:aaa@qq.com
rem	* Win9x doesn't like ``EXISTS dir'' so change it to ``EXISTS dir\nul''.
rem	Thanks to Nicolas Weber mailto:aaa@qq.com
rem
rem 2003.03.06  Earnie Boyd  mailto:aaa@qq.com
rem	* Add -backspacekey switch to rxvt startup.
rem	* Move RXVT color setup to startrxvt label
rem
rem 2004.01.30  Earnie Boyd  mailto:aaa@qq.com
rem	* Add -geometry parameter to work around an off by one issue with
rem       the default values.
rem	Thanks to Dave Schuyler mailto:aaa@qq.com
rem
rem 2004.03.28  Earnie Boyd  mailto:aaa@qq.com
rem	* Add -norxvt or --norxvt switch argument.
rem	Thanks to Keith Marshall mailto:aaa@qq.com
rem	* Add method to determine absolute path of msys.bat so that we no
rem	longer need to change to the bin directory.  This allows msys.bat to be
rem	called from any working directory.
rem	Thanks to Kevin Mack  mailto:aaa@qq.com
rem
rem 2005.07.06  Max TE Woodbury  mailto:aaa@qq.com
rem     * Fixed WD check for command.com systems.
rem     * Minimized intermediate CMD window to reduce startup flashyness.
rem     * If rxvt.exe cannot be found, try sh.exe.
rem
rem 2005.12.06  Tuomo Latto  mailto:aaa@qq.com
rem     * Added a temporary workaround for getting MSYS shell to run on x64.
rem
rem 2005.12.07  Keith Marshall  mailto:aaa@qq.com
rem     * ``EXISTS %WD%\sh.exe'' should be ``EXISTS %WD%sh.exe''; corrected.
rem     * Modified Tuomo's patch, to avoid trashing Window settings in Win32.
rem
rem 2005.12.08  Tuomo Latto  mailto:aaa@qq.com
rem     * Keith's modified patch fails on x64; start did funny things.
rem     Reworked, for correct behaviour on both platforms.
rem
rem 2009.03.17  Keith Marshall  mailto:aaa@qq.com
rem     * Add -rxvt or --rxvt switch; start in --norxvt mode by default.
rem     Make it deterministic; (do not inherit MSYSCON from parent).
rem

4、配置ffmpeg

./configure --enable-shared --disable-static --prefix=./install/vs2013 --enable-dxva2 --toolchain=msvc

make -j8 

make install

可以生成lib dll文件