1.首先下载该处的X264:" Z! m1 G* \# V
3 N% j) n! R* a, k" D
http://truth-tracer.appspot.com/x264-snapshot-20090216-2245.rar5 Q8 c: a) m( t2 T& |
5 j( O! h7 r9 _作者已经对该版本的X264进行了一定的修改。具体修改内容可见:http://bbs.chinavideo.org/viewthread.php?tid=6945&highlight=VS2008
/ p0 y% z9 v8 O9 W2 ^' K+ [2 Q# j0 e6 i7 S
2。下载yasm' J# z" ]) V8 x, H5 F9 q
! I' }# L& F% b4 }, U0 z8 Q
http://www.tortall.net/projects/yasm/wiki/Download* m. I7 }1 s# t9 M
2 ?2 A* X# M, N
选择win32.exe.如果是VS2010则下载Win32 VS2010 .zip, r6 {1 C# c! n- T, g
! {1 b3 H( }" g3 b+ s7 T5 ^7 [
解压后将.exe改名成yasm.exe,主要是方便工程里面yasm的设置) Y* o3 W! v2 X5 s& V3 n( f
% {; t O z" H, t
将.exe放在D:\Program Files\Microsoft Visual Studio 9.0\VC\bin,查找自己的相应目录' V' S; {9 b+ S1 q8 c- |6 E5 w! B
) g- x$ {5 N* J
3。接下来需要下载自定义生成的模板(自己理解的)
+ t8 o0 L& L5 r3 p% y, P) k) Y) R8 p3 N, T3 g! z
VS2008,VS2005下载 yasm.rules http://www.tortall.net/svn/yasm/trunk/yasm/Mkfiles/vc9/yasm.rules6 ~. W& L F0 d6 n; p& x7 r
2 u9 Z9 d" ^' p- |6 s9 R" r4 K9 m
VS2010可直接使用除了EXE外三个文件
, W# d, @2 e* J. I" D+ ]
2 M0 Z: r' e. E* |4。模板放到你的工程目录下,如C。。。。。。\x264-snapshot-20090216-2245\x264-snapshot-20090216-2245\build\win32
% ?$ \; c$ _0 Y/ h% ^" {1 c( \* S
0 i8 m8 Z; c% _6 M. AVS2010有个一劳永逸的办法,将那三个文件放到
3 J3 W, k/ m; Y! e7 [. e3 J8 e. p3 G; O5 I4 t
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations下
I% T. U% [# s7 P
/ Y7 W9 ?* }! p) `5。打开工程,编译X264具体的思路是先编译生成libx264d.lib,然后将该lib添加到工程lib库,最后对x264进行编译后生成x264.exe
2 B- ^2 p) K R/ {, a9 P) v' p3 s; c/ a
首先编译生成libx264d.lib.右击解决方案,选择自定义生成规则,选择查找现有的,然后在弹出对话框里选择放在该目录下的yasm.rules,如果你放在别的地方就同样的方式添加。
* ], ~: }7 S" ~7 g K! s+ p0 T- R o, R$ h; ^
然后右击解决方案,在属性里可以看到刚才新加的yasm assemble,vs2010貌似没有显示,但不妨碍。具体的东西不用动,接着下一步。
* K( s) i. O+ ^2 P9 A% ?; U9 `. [) x
接下来打开解决方案的x86目录,可以发现ASM都集中在这里.刚才已经修改了yasm名字的,这里可以不用多改,不过也可以按照接下来的步骤进行检修改:
% n/ U) q x6 M; q
# E9 h G8 H: O% f7 j9 B. C0 \9 }9 ~( b$ G
t) M" Y, c# y7 k5 g将命令行里的yasm改成你放在bin目录下的exe的名字。 如果使用yasm的话,请注意你的工程所在目录中不能有中文,否则编译的时候yasm会显示???而导致不能进行汇编。( A8 D( q" S a- \" J0 B% o, L
接下来对所有的asm文件进行属性修改,完了后编译就没有什么问题了。 6。编译完了libx264后,会在工程\bin目录下生成个libx264d.lib(因人而异),可以将它提取出来放到VC的lib库里,具体路径:D:\Program Files\Microsoft Visual Studio 9.0\VC\lib中 打开x264的工程。右击解决方案,选择属性,选择C++-->链接器
( I+ t4 V/ p6 ~( j0 r* v$ t+ g9 c% m, U, i: I7 ]
将刚才添加的lib名添加到附加依赖选项。 接下来解决方案,生成,是不是没有问题了。嘿嘿! VS2010也同样可以解决。 |