当前位置: 代码迷 >> 多媒体/流媒体开发 >> ffmpeg编译没有lib解决方案
  详细解决方案

ffmpeg编译没有lib解决方案

热度:5456   发布时间:2013-02-26 00:00:00.0
ffmpeg编译没有lib
msys + mingw 下编译ffmpeg

搞了两天了,编译数次,网上找了N多方法(当然都差不多)

一直生成不了lib,只有dll和a


麻烦翻译成功过的大哥指条明路。。。。

------解决方案--------------------------------------------------------
可能你是少加了这一项 
--enable-shared

加上这一项就会产生 *.lib ,试试看。
------解决方案--------------------------------------------------------
探讨

不过有def文件,用VC的lib工具通过def文件生成lib,但是用不了

------解决方案--------------------------------------------------------
多看看
http://ffmpeg.arrozcru.org/wiki/index.php?title=MSVC
记得原来是在mingw里的哪个文件里加句话就可以了的
------解决方案--------------------------------------------------------
按网上的教程,用msys+mingw很顺利就编译出来了啊
http://snowyrock.spaces.live.com/Blog/cns!B8CBEB7169880B1D!551.entry?sa=219070566
------解决方案--------------------------------------------------------
自己编译费时,
直接google ffmpeg sdk 有已经编译好的提供给你使用
------解决方案--------------------------------------------------------
直接使用 ffmpeg sdk 就可以了。
http://download.csdn.net/source/2248749 这个地址可以下载
------解决方案--------------------------------------------------------
【转】
修改 "msys.bat"
用文本编辑器打开C:\msys\msys.bat,譬如记事本等。如果你打算用MSVC++编译你的程序(注意:是你的程序,不是FFmpeg),你需要有.lib文件才能链接到FFmpeg的库。这些.lib文件可以使用微软的工具链中lib命令产生。为此,你的机器上必须已经安装了微软的Visual Studio或是Visual C++。把下面这行加到msys.bat的最前面,把路径替换成你机器上vcvars32.bat实际存在的路径。 
 
call "C:\Program Files (x86)\Microsoft Visual Studio .NET 2003\vc7\bin\vcvars32.bat"
如果你的操作系统是Windows x64,那你必须把下面的这些内容插入到:_WindowsNT标签后面(行36): 
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
------解决方案--------------------------------------------------------
lz的这个问题我也碰到过

引起的原因是我安装了多个版本的VS导致,先安装vs08,然后又安装了vc6.0。创建lib文件时需要使用lib.exe程序来创建,而环境变量当前使用的是vc6.0版本目录下的lib.exe,这个版本的lib.exe不能再Msys下正常使用,必须使用vs05或更高版本的目录下的lib.exe

解决办法:设置环境变量PATH,将XXXX\Microsoft Visual Studio 9.0\VC\bin添加到环境变量中,另外将其他的vc6.0或其他的环境变量删除。
  相关解决方案