Ark_Zhang

导航

 

一、下载msys环境,可以直接到这里下载http://msys-cn.googlecode.com/files/MSYS-Update.7z,解压即可

我从来没用过msys,所以后面还会遇到一些看来稀奇古怪的问题,如果你很熟悉,也许不算问题。

例如:安装在C:\work\h264\MSYS-Update下了

二、下载最新的x264代码,可以到这里下载http://www.videolan.org/developers/x264.html

解压到MSYS目录下home文件(没有的话创建)下

C:\work\h264\MSYS-Update\MSYS\home\x264-snapshot-20120801-2245
三、进入msys环境配置编译,可能会提示没有yasm汇编器的错误,可以下载一个yasm汇编器,拷贝到msys目录下的bin目录
命令如下:
./configure --enable-shared
make

这个要解释一下,没用过MSYS,所以开始头晕了。其实是一个模拟linux的环境。

在windows下开一个command窗口,cd 到C:\work\h264\MSYS-Update\MSYS 目录下,会发现一个msys.bat的文件,不用管里面的东西,运行就可以了,会出来一个模拟linux的窗口,在那个窗口里面 cd 到 /home/x264-snapshot-20120801-2245 下面,这是linux的命令了,你可以用pwd看看是不是这个目录,也可用ls 察看文件就是dir。

我在这一步的时候,说我没有权限,退出来了,百思不得其解,因为我是administrator阿,用su也试了,不行,晚上突然醒悟,第二天早上,一试果然,264源码展开的时候,目录或文件被windows设成只读了,所以要把x264-snapshot-20120801-2245 属性改一下,如果你一下OK了,幸运!

yasm汇编器没有,下载http://yasm.tortall.net/Download.html   我下的这个 Win64 .exe (for general use on 64-bit Windows),根据自己的机器自己找一个。下来后文件名要改成yasm.exe 复制到 C:\work\h264\MSYS-Update\MSYS\bin

make成功。
四、使用pexports工具,将库导出

命令如下:
pexports libx264-125.dll >libx264-125.def

这个命令同样是在LInux窗口下用,另外文件名中的125是我用的x264版本号,具体参考自己用的x264版本。
五、使用lib工具导出lib库

命令如下:

lib /machine:i386 /def:libx264-125.def
       这个命令是在windows的命令窗口里用。 lib.exe是vc带的一个工具,如果你输入lib回车,说错误的命令的话,就在盘上找找lib.exe

我的在这里 C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin

把他加到 系统环境变量PATH里面(怎么加,根据自己的系统google一下吧)加完后要重新开一个命令窗口才管用。

找到lib后又出了一个问题,说mspdb80.dll这个文件找不到,微软也不是神阿,又搜索了半天这个,还好有个简单的方法。装VC的时候这个应该有,所以你再search一下你的机器。我的在C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE这跟目录下。

然后复制文件从:

C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE

  • msobj80.dll
  • mspdb80.dll
  • mspdbcore.dll
  • mspdbsrv.exe

C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin

posted on 2012-11-28 18:08  Ark_Zhang  阅读(2916)  评论(0编辑  收藏  举报