1.首先下载该处的X264:
6 \0 T9 T% e) D( _. `6 h$ W3 [* F; g, l) H: _& x. Z& r1 w
http://truth-tracer.appspot.com/x264-snapshot-20090216-2245.rar$ G; @) j( P! o, R
; C# u1 [: o1 ^, J# d+ B4 b. r作者已经对该版本的X264进行了一定的修改。具体修改内容可见:http://bbs.chinavideo.org/viewthread.php?tid=6945&highlight=VS2008
; {6 f+ w: K; ?) x) ]/ w% F! N D, Q' v; w; G' `; a1 r! o
2。下载yasm
3 V. e- j& F* G# U0 |0 r. Q% u, Z! a8 ?$ ?( J& Z* a& N+ Q% R
http://www.tortall.net/projects/yasm/wiki/Download' U7 A( e% C) ^7 D7 ?" L, |" M1 C. j* Z
, d5 A' {. r) i; }* y. F; H. b
选择win32.exe.如果是VS2010则下载Win32 VS2010 .zip. v F- D1 A2 p Q1 a/ _( T
! K* S' h( B p |
解压后将.exe改名成yasm.exe,主要是方便工程里面yasm的设置4 f0 i# Y6 ]3 p/ K1 d5 c/ j
, L N- h7 o" r* U: P7 V
将.exe放在D:\Program Files\Microsoft Visual Studio 9.0\VC\bin,查找自己的相应目录
" }# ^' X0 x1 O8 [& Z) y3 t& _; H0 {2 k
9 N! \" i$ _6 g, I3。接下来需要下载自定义生成的模板(自己理解的)$ U2 Z/ X8 Z, D
4 L O$ h5 G5 Y" t) l5 W7 Z' @% B {2 j
VS2008,VS2005下载 yasm.rules http://www.tortall.net/svn/yasm/trunk/yasm/Mkfiles/vc9/yasm.rules
" l {; [. ]& x% T+ H- @) b' J; ~" F3 V& ]. V
VS2010可直接使用除了EXE外三个文件" e1 o% l% D! `1 A
9 F4 i1 Z) o% J9 R+ w
4。模板放到你的工程目录下,如C。。。。。。\x264-snapshot-20090216-2245\x264-snapshot-20090216-2245\build\win32
3 n' D, C0 [; z* [$ _" d5 }) c F% r N) d3 E
VS2010有个一劳永逸的办法,将那三个文件放到% [& d# y r ~6 i
6 ~8 q% ^( q6 cC:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations下
2 c, F" p' k* G9 d
' r. c6 V- N0 t+ K5。打开工程,编译X264具体的思路是先编译生成libx264d.lib,然后将该lib添加到工程lib库,最后对x264进行编译后生成x264.exe6 s8 n' s2 }9 W) }+ z
3 @ z2 U1 V, h1 j6 @
首先编译生成libx264d.lib.右击解决方案,选择自定义生成规则,选择查找现有的,然后在弹出对话框里选择放在该目录下的yasm.rules,如果你放在别的地方就同样的方式添加。1 U2 `% L! u4 d0 P2 |
% i$ a$ I& S1 B% z; Y: G 然后右击解决方案,在属性里可以看到刚才新加的yasm assemble,vs2010貌似没有显示,但不妨碍。具体的东西不用动,接着下一步。1 }8 u- [ `# y: |7 T# E# f: X
! Z, i- K" G+ X; D0 Y 接下来打开解决方案的x86目录,可以发现ASM都集中在这里.刚才已经修改了yasm名字的,这里可以不用多改,不过也可以按照接下来的步骤进行检修改:
8 u: Z8 E, m8 V$ f' J. {7 L* _
C* s9 E# e1 j* R0 U; n: q% Q% r! C. k
' k, {* U: g2 E, X5 `# ?1 r! ]
将命令行里的yasm改成你放在bin目录下的exe的名字。 如果使用yasm的话,请注意你的工程所在目录中不能有中文,否则编译的时候yasm会显示???而导致不能进行汇编。
( G" D( M: c& o1 H, l& a* Q- g 接下来对所有的asm文件进行属性修改,完了后编译就没有什么问题了。 6。编译完了libx264后,会在工程\bin目录下生成个libx264d.lib(因人而异),可以将它提取出来放到VC的lib库里,具体路径:D:\Program Files\Microsoft Visual Studio 9.0\VC\lib中 打开x264的工程。右击解决方案,选择属性,选择C++-->链接器
! Q9 V9 m# x* I, I7 L4 ]* r( F0 T! k! b; }
将刚才添加的lib名添加到附加依赖选项。 接下来解决方案,生成,是不是没有问题了。嘿嘿! VS2010也同样可以解决。 |