1.首先下载该处的X264:
" K. t9 Q; r ]$ R, T4 w# _" K- i, c! s" r% q
http://truth-tracer.appspot.com/x264-snapshot-20090216-2245.rar |8 B' F. s/ Y! e* d4 A
@7 K8 l5 e, O! ^6 F. d, C作者已经对该版本的X264进行了一定的修改。具体修改内容可见:http://bbs.chinavideo.org/viewthread.php?tid=6945&highlight=VS2008 Z$ W- K5 h* I7 }
& ^4 y3 }7 O: n2。下载yasm
1 h: ^1 l) e6 n/ l9 P/ T' w- V3 _+ ?- I2 w/ b
http://www.tortall.net/projects/yasm/wiki/Download
# W/ y# @" ]' g. x- F- N
7 @/ v( y) \$ S0 j, f% F" \: m% z# Z选择win32.exe.如果是VS2010则下载Win32 VS2010 .zip4 l0 h) e! H. E
# O) a7 C9 `: }7 p0 H$ l3 Y解压后将.exe改名成yasm.exe,主要是方便工程里面yasm的设置) a% I4 \5 ]: e
' i/ t3 l9 f5 `/ l: E5 a
将.exe放在D:\Program Files\Microsoft Visual Studio 9.0\VC\bin,查找自己的相应目录) h, `1 E# D6 S5 q
5 J6 J5 i9 y1 Z9 F: K% d$ @5 i3。接下来需要下载自定义生成的模板(自己理解的)
' q4 q+ L7 L( C5 ]: m; x |' X& Y i" R$ M
VS2008,VS2005下载 yasm.rules http://www.tortall.net/svn/yasm/trunk/yasm/Mkfiles/vc9/yasm.rules$ f' X6 H$ j5 [, h0 S0 k* }9 ^
. F/ B0 C. i5 C+ [1 pVS2010可直接使用除了EXE外三个文件
; Z) \$ E" z' y. ~
5 D4 }4 m) e, m% l# ^4。模板放到你的工程目录下,如C。。。。。。\x264-snapshot-20090216-2245\x264-snapshot-20090216-2245\build\win324 f. l8 Y7 g2 I. w# o
! A4 q2 h; z' l# g4 u
VS2010有个一劳永逸的办法,将那三个文件放到) J7 ^% y+ m0 z" b8 N
' B4 Z6 \2 [2 I8 L# |! f2 sC:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations下
+ {" A9 J ]. n$ F/ Z5 N2 O8 j# u2 }* q2 H
5。打开工程,编译X264具体的思路是先编译生成libx264d.lib,然后将该lib添加到工程lib库,最后对x264进行编译后生成x264.exe4 V9 f" W0 ?3 k
3 }5 O9 K5 _7 B9 O; e- \3 ^( n
首先编译生成libx264d.lib.右击解决方案,选择自定义生成规则,选择查找现有的,然后在弹出对话框里选择放在该目录下的yasm.rules,如果你放在别的地方就同样的方式添加。
2 m- w- p3 R4 r8 O! @; \, u' J0 g& z5 R; D; U" G) [9 T
然后右击解决方案,在属性里可以看到刚才新加的yasm assemble,vs2010貌似没有显示,但不妨碍。具体的东西不用动,接着下一步。8 }$ K! Y# i# S, L5 P) K+ y8 V; h
9 q1 |; Q1 k: |) @% z
接下来打开解决方案的x86目录,可以发现ASM都集中在这里.刚才已经修改了yasm名字的,这里可以不用多改,不过也可以按照接下来的步骤进行检修改:
9 X: `5 W2 L7 {# F1 v
1 l2 q- J. G+ p h5 _% S9 i2 E c D$ [6 O' z6 [, y; d
1 h/ c* R( J: E2 a9 C4 p
将命令行里的yasm改成你放在bin目录下的exe的名字。 如果使用yasm的话,请注意你的工程所在目录中不能有中文,否则编译的时候yasm会显示???而导致不能进行汇编。
) z8 e: G' T! n! U" a3 E3 o 接下来对所有的asm文件进行属性修改,完了后编译就没有什么问题了。 6。编译完了libx264后,会在工程\bin目录下生成个libx264d.lib(因人而异),可以将它提取出来放到VC的lib库里,具体路径:D:\Program Files\Microsoft Visual Studio 9.0\VC\lib中 打开x264的工程。右击解决方案,选择属性,选择C++-->链接器
* ~3 a* e7 S/ P' s7 }. R9 c6 a/ l+ V( O0 r$ ~. `
将刚才添加的lib名添加到附加依赖选项。 接下来解决方案,生成,是不是没有问题了。嘿嘿! VS2010也同样可以解决。 |