使用VS2010编译Webkit r116410 ( Nightly Build @ 2012-5-8 )

转载请注明出处:http://blog.csdn.net/horkychen

使用VS2010编译Webkit r116410 ( Nightly Build @ 2012-5-8 )

 

Webkit Night Build不能直接支持VS2010,需要自己多做些事情。和VS2005不同的是有一些工程转换上的问题和nullptr的支持的问题。

简单说一下吧,供需要的同学参考。

a. 如果本机已经安装了Python Perl,先从Path中移除。因为编译过程会有不少的python脚本要执行,如果是系统下的python可不认识/cygdrive/xxx之类的路径。

b. Cygwin还是从Webkit下载Cygwin-Downloader安装。如果已经安装了,又不想重来,一定要检查一下gperf (一个hash的项目)有没有安装.如果你的CYGWIN不在C盘或系统盘,恭喜你,你要将所有脚本中的SystemDrive改为Cygwin所在的盘符,比如你可以定义一个新的环境变量。

c. 解压Webkit源码后,使用Tools/Scripts/update-webkitTools/Scripts/update-webkit-support-library后,运用Tools/Scripts/build-webkit –debug是编译不了的。那是因为MSBUILD配置的问题。

Tools/Scripts/devenvTools/Scripts/webkitdirs.pm中有关VS2005VS2008定位的代码修改一下,增加VS2010的支持。

d. 安装SafariQuickTime.安装DirectX SDK (Feb 2010).

e. 使用VS2010打开Webkit.sln,调到Debug模式。因为好多文件的编译有问题,将所有的项目中的”Treat Warnings As Errors”关掉。如果还是有什么文件多一行之类的错误,就打开文件转成UTF-8 with DOM存储一下。

f.将以下两个文件的类型改为”C/C++ Compiler”

Source\WebCore\platform\network\curl\CookieJarCurl.cpp

Source\WebCore\platform\image-decoders\ImageDecoder.cpp

g. JavaScriptCore.def中去除一项关于nullptr的输出。

h.为了提速,你还是还设置一下/MP选项加速编译。我前期花了不少时间在等待上,就是没做好设置。详细的步骤参考http://blogs.msdn.com/b/visualstudio/archive/2010/03/08/tuning-c-build-parallelism-in-vs2010.aspx

 

编译成功后,注意最新的Webkit没办法使用先前安装的Safari调试了,而要改成编译出来的MiniBrowserWebkit官网也有说明。

如果是x64环境,还会遇到Apple Support Directory找不到的问题,网上有解决方法。改下注册表就行了。

 

重要参考:

Build Webkit on windows 7 with VS2010

Build Webkit oon Windows

 

Good Luck!

上一篇:变量和标识符|学习笔记


下一篇:ArchSummit2016移动端架构相关技术一些思考