1.首先下载该处的X264:
# \7 Q) N# A4 U2 }
; ^6 e+ f+ u6 J- T6 U% Yhttp://truth-tracer.appspot.com/x264-snapshot-20090216-2245.rar
; v' h0 X$ z) w' M4 W( [& G$ Z" C% y; \1 l
作者已经对该版本的X264进行了一定的修改。具体修改内容可见:http://bbs.chinavideo.org/viewthread.php?tid=6945&highlight=VS2008
! H4 C$ u; B! }; |8 o$ q$ Z0 L/ M) }
0 Y, l6 a _3 _2。下载yasm. J; A( B3 S3 k: V! Q
% W* e5 `9 J, i, C }
http://www.tortall.net/projects/yasm/wiki/Download
( V; a+ ~; l9 \( i, B2 S& y
* n+ M( }8 A7 R* T: P选择win32.exe.如果是VS2010则下载Win32 VS2010 .zip
5 _! t! z1 n! O; C6 ^: u5 O$ ~: C% S4 s- p
解压后将.exe改名成yasm.exe,主要是方便工程里面yasm的设置
- U7 ^2 O. \3 r- Q4 c3 g6 T, J: X \& s8 e( {
将.exe放在D:\Program Files\Microsoft Visual Studio 9.0\VC\bin,查找自己的相应目录
5 V6 V) D6 j* `2 V4 T- G7 H) x* ?( Z7 b. q4 m# y, ?2 K
3。接下来需要下载自定义生成的模板(自己理解的)
' z+ `5 L/ Z; e- Z; r, [5 z+ }- ]8 c' i" i4 S6 ]; y) m& _
VS2008,VS2005下载 yasm.rules http://www.tortall.net/svn/yasm/trunk/yasm/Mkfiles/vc9/yasm.rules9 v/ K1 k9 c: f& x
5 f. z% V: I6 N+ X, \2 m) A* \
VS2010可直接使用除了EXE外三个文件* I+ P* G' s- p( Y6 f
2 H! {0 i) }: O# n" f) f$ z4。模板放到你的工程目录下,如C。。。。。。\x264-snapshot-20090216-2245\x264-snapshot-20090216-2245\build\win32 r6 n. ~" j3 s- P7 n0 N* P* J, q
3 X2 p$ D& ]2 g* [0 uVS2010有个一劳永逸的办法,将那三个文件放到) q+ B3 H+ i! q8 p1 r8 X2 c8 w* i
, H9 F3 Z9 F6 `4 K$ u* p( s
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations下
Q' r, t' `2 s7 S
+ r! L I6 X# b% W+ q4 h5。打开工程,编译X264具体的思路是先编译生成libx264d.lib,然后将该lib添加到工程lib库,最后对x264进行编译后生成x264.exe
! U: ?3 N* ~5 V5 m6 V! J. ] u) _8 d3 K4 _# P
首先编译生成libx264d.lib.右击解决方案,选择自定义生成规则,选择查找现有的,然后在弹出对话框里选择放在该目录下的yasm.rules,如果你放在别的地方就同样的方式添加。$ S% L3 g+ k1 k. ^! m& P3 L
0 X# c; p8 [7 ^% a" m0 q0 p 然后右击解决方案,在属性里可以看到刚才新加的yasm assemble,vs2010貌似没有显示,但不妨碍。具体的东西不用动,接着下一步。# ^+ N) O' w) \4 _+ D
+ B; ]! n5 k/ ~8 p8 `; K
接下来打开解决方案的x86目录,可以发现ASM都集中在这里.刚才已经修改了yasm名字的,这里可以不用多改,不过也可以按照接下来的步骤进行检修改: : I0 g9 J, g+ R9 S5 I
0 ^" _! X5 u2 e4 K- q
: w/ M1 K( o: k2 i2 t. q4 d
4 j5 E3 ~2 r: b将命令行里的yasm改成你放在bin目录下的exe的名字。 如果使用yasm的话,请注意你的工程所在目录中不能有中文,否则编译的时候yasm会显示???而导致不能进行汇编。
- I5 e, H2 u: |6 G" F0 j# N' n C 接下来对所有的asm文件进行属性修改,完了后编译就没有什么问题了。 6。编译完了libx264后,会在工程\bin目录下生成个libx264d.lib(因人而异),可以将它提取出来放到VC的lib库里,具体路径:D:\Program Files\Microsoft Visual Studio 9.0\VC\lib中 打开x264的工程。右击解决方案,选择属性,选择C++-->链接器 ' j |8 U( w5 I8 U& p& P1 N
' w, _$ H; L2 s- g0 _! }将刚才添加的lib名添加到附加依赖选项。 接下来解决方案,生成,是不是没有问题了。嘿嘿! VS2010也同样可以解决。 |