`
webcode
  • 浏览: 5912173 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

使用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找不到的问题,网上有解决方法。改下注册表就行了。

重要参考:

http://blog.ashodnakashian.com/2012/01/building-webkit-on-windows-7-with-vs2010/

Good Luck!

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics